CS STUDY

30 Posts

06. Process Management 1

CS STUDY/OS
2023.08.25
1. 프로세스 생성(Process Creation) Copy-on-write(COW) * 부모 프로세스(Parent process)가 자식 프로세스(children process) 생성 * 프로세스의 트리(계층 구조) 형성 * 프로세스는 자원을 필요로 함 * 운영체제로부터 받는다 * 부모와 공유한다 * 자원의 공유 * 부모와 자식이 모든 자원을 공유하는 모델 * 일부를 공유하는 모델 * 전혀 공유하지 않는 모델(원칙. 별개의 process이기 때문에 독립적으로 경쟁하게 됨) * 수행(Execution) * 부모와 자식은 공존하며 수행되는 모델 * 자식이 종료(teminate) 될 때까지 부모가 기다리는(wait) 모델 * 주소 공간(Address space) * 자식은 부모의 공간을 복사함(binary ..

05. Process 2

CS STUDY/OS
2023.08.24
1. Thread "A thread(or lightweight process) is a basic unit of CPU utilization" Thread의 구성 * program counter * register set * stack space Thread가 동료 thread와 공유하는 부분(=task) * code section * data section * OS resources * 전통적인 개념의 heavyweight process는 하나의 thread를 가지고 있는 task로 볼 수 있다. * 다중 스레드로 구성된 태스크 구조에서는 하나의 서버 스레드가 blocked(waiting) 상태인 동안에도 동일한 태스크 내의 다른 스레드가 실행(running)되어 빠른 처리를 할 수 있다. *동일한 일..

04. Process 1

CS STUDY/OS
2023.08.23
1. 프로세스의 개념 "Process is a program in execution" (실행 중인 프로그램) 프로세스의 문맥(context) * 프로그램이 어디까지 실행되었는가 확인 * CPU 수행 상태를 나타내는 하드웨어 문맥 *Program Counter *각종 register * 프로세스의 주소 공간 * code, data, stack * 프로세스 관련 커널 자료 구조 * PCB(Process Control Block) * Kernel stack 프로세스의 상태(Process state) * 프로세스는 상태(state)가 변경되며 수행된다 * Running * CPU를 잡고 instruction을 수행 중인 상태 * Ready *CPU를 기다리는 상태(메모리 등 다른 조건을 모두 만족하고) * Bl..

03. System Structure&Program Execution

CS STUDY/OS
2023.08.22
동기식 입출력과 비동기식 입출력 * 동기식 입출력(synchronous I/O) * I/O 요청 후 입출력 작업이 완료된 후에야 제어가 사용자 프로그램에 넘어감 * 구현 방법 1 * I/O가 끝날 때까지 CPU를 낭비시킴 * 매시점 하나의 I/O만 일어날 수 있음 * 구현방법 2 * I/O가 완료될 때까지 해당 프로그램에게서 CPU를 빼앗음 * I/O가 처리를 기다리는 줄에 그 프로그램을 줄 세움 * 다른 프로그램에게 CPU를 줌 * 비동기식 입출력 (asynchronous I/O) * I/O가 시작된 후 입출력 작업이 끝나기를 기다리지 않고 제어가 사용자 프로그램에 즉시 넘어감 * 두 경우 모두 I/O의 완료는 인터럽트로 알려줌 DMA(Direct Memory Access) * 빠른 입출력 장치를 메모..

02. System Structure & Program Execution

CS STUDY/OS
2023.08.21
1. 컴퓨터 시스템 구조 Memory * CPU의 작업 공간 * CPU는 매 클럭 사이클마다 메모리에서 instructure를 읽어서 출력 Disk * 메모리 읽기(input) + 처리 결과 저장(output) Mode bit * 사용자 프로그램의 잘못된 수행으로 다른 프로그램 및 운영체제에 피해가 가지 않도록 하기 위한 보호 장치 * mode bit을 통해 하드웨어적으로 두 가지 모드의 operation 지원 1 사용자 모드 : 사용자 프로그램 수행 0 모니터 모드(= 커널 모드, 시스템 모드) : OS 코드 수행 * 보안을 해칠 수 있는 중요한 명령어는 모니터 모드에서만 수행 가능한 '특권명령'으로 규정 * Interrupt나 Exception 발생 시 하드웨어가 mode bit을 0으로 바꿈 * 사..

01. 운영체제란 무엇인가?

CS STUDY/OS
2023.08.20
1. 운영체제(Operating System, OS) 컴퓨터 하드웨어 위에 바로 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 협의의 운영체제(커널) : 운영체제의 핵심부분으로 메모리에 상주하는 부분 광의의 운영체제 : 커널 뿐 아니라 각종 주변 시스템 유틸리티를 포함한 개념 2. 운영체제의 목적 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공 운영체제는 동시 사용자/프로그램들이 각각 독자적 컴퓨터에서 수행되는 것 같은 환상을 제공 하드웨어를 직접 다루는 복잡한 부분을 운영체제가 대행 컴퓨터 시스템의 자원을 효율적으로 관리 프로세서, 기억장치, 입출력 장치 등을 효율적 관리 * 사용자간의 형평성 있는 자원 분배 * 주어진 자원으로 최대한의 성능을 내도록 사용자 및 운..