본문 바로가기

CS study/운영체제 - JSCODE 스터디

(4)
[2주차 스터디 노트] 쓰레드, 멀티 프로세스/쓰레딩, 프로세스 상태 변화 프로세스 상태 프로세스의 수행 상태 변화는 운영 체제의 프로세스 관리의 중요한 부분이다. 운영 체제는 프로세스의 생명 주기 동안 여러 가지 상태를 가지며, 프로세스의 현재 상황과 다음에 수행해야 할 작업을 나타낸다. OS에서는 이 상태를 PCB를 통해 인식하고 관리한다. 새로 생성된 상태 (New) 프로세스가 생성되고 초기화되는 단계이다. 프로세스는 프로세스에 필요한 초기 리소스와 설정을 할당받있지만, 아직 실행 준비가 완전히 되지 않은 상태. -> 프로세스가 필요한 모든 리소스를 할당받고, 실행을 위한 준비가 완료되면 "준비 상태"로 전환된다. 여기서 할당받을 리소스들은 다음과 같다. - 프로세스 식별자 (PID): - 프로세스 제어 블록 (PCB): - 프로세스 실행을 위한 최소한의 메모리 공간 - ..
[2주차 스터디 노트] 프로세스, 프로세스의 메모리 구조, 문맥 교환 프로그램과 프로세스 프로그램은 저장장치에 존재하는 컴파일된 코드의 집합이다. 이것이 실행되기 전까지는 그저 저장장치에 존재되는 데이터에 불과하지만, OS에서 명령을 받아 메모리에 적재하게 되면 그때부터는 운영체제의 관리를 받으며 CPU 자원을 통해 동작하는 '프로세스' 가 된다. 프로세스는 CPU 자원을 사용하고 운영체제의 관리를 받으며, 프로그램 코드를 실제로 실행하는 동적인 개체 이중 눈에 보이지 않는 백그라운드 프로세스를 유닉스 체계의 운영체제에서는 데몬(daemon)이라고 부르고, 윈도우 운영 체제에서는 서비스라고 부른다. 프로그램은 어떤 과정을 거쳐 메모리에 적재되는가? 프로그램이 메모리에 적재되는 일반적인 과정 1. 프로그램 실행 요청: 특정 프로그램을 실행하라는 명령을 운영체제에 전달 2. ..
1주차 스터디 노트 면접 예상 질문 1. 운영체제는 무엇이고 어떤 역할을 수행하는지 설명해주세요. 답변 - 운영체제는 컴퓨터 시스템이 동작할 때, 이들 자원을 적절하게 사용할 수 있는 방법을 제공한다. - 컴퓨터 하드웨어와 사용자 간의 인터페이스 역할을 하는 시스템 소프트웨어이다. 이는 현대의 정부와 유사하다. 정부 자체로는 유용한 기능을 제공하지 않지만, 유용한 작업을 할 수 있는 환경을 만드는 것이다. - 역할 1. 메모리 자원을 관리한다. (하드웨어 자원을 관리) 실행할 프로그램을 메모리에 적재하고, 실행되지 않는 프로그램을 메모리에서 삭제한다. CPU, 메모리, 입출력 장치 등 컴퓨터 자원을 효율적으로 관리하고 할당한다. - 역할 2. CPU 자원을 할당하여 프로그램들이 올바르게 실행되도록 관리한다. 이는 메모리에 ..
스터디 시작 개요 본격적으로 프로젝트 이후 오후 시간에 CS를 학습하려고 한다. 지금까지는 동기생들, 주변 스터디 팀원들과 알음알음 질의응답식으로 예상 문제를 던져주는 것에 그쳤지만, 이번 스터디 참여를 계기로 면접을 위한 지식이 아닌 개발을 위해 필요한 지식적 기반을 쌓고자 한다. 일정 주차별 핵심 소재를 필두로 원리를 학습하고, 예상 질문을 서로 질의해보며 기반을 다질 것이다! https://jscode.notion.site/CS-e7a5eef418f24e83842b331803c34458 모의면접으로 학습하는 컴퓨터공학(CS) 스터디 📋 스터디 개요 jscode.notion.site