목록Computer Science/Operating System (33)
엔지니어가 되고 싶은 공돌이

8. 1 Context Switch - 한 프로세스에서 다른 프로세스로 CPU 사용을 전환하는 행위 - Overhead가 따른다. - Context Switch overhead is dependent on hardware support - 100s or 1000s of switches/s typically 8. 2 State queue - OS는 모든 프로세스 상태를 PCB에 저장하고 이 구조를 큐로 관리한다. - queue의 종류는 매우 다양 - 프로세스가 상태를 변경함에 따라 PCB가 queue를 이동한다. - PCB는 data structures 이다. - Dynamically allocated inside OS memory - Process is created: OS는 PCB를 할당, 초기화, q..

7. 1 fork() - CPU 스케쥴링에 따라서 부모가 먼저 실행될지 자식이 먼저 실행될 지는 달라질 수 있다. - getpid(): 자신의 pid - getppid(): 부모의 pid 7. 2 Process State Transition - 운영체제가 각 프로세스의 상태를 관리 7. 3 PCB(Process Control Block) - 각 프로세스에 대한 정보를 가지고 있다. - PC, Registers. Stack pointer, PID, Memory management, File management...

6. 1 What is Process? - Program: 컴퓨터에 저장되어 있는 순서가 있는 명령어들의 집합. - Process: 현재 컴퓨터에서 실행중인 Program. - Processor: CPU 또는 하드웨어 - Task: 하나의 프로세스 - Job: 프로세스 여러개 가 모여 한 가지 일을 처리할 때 6. 2 Process Creation & Termination - 오른쪽 코드에서 return -1; 이 error exit의 예 - 프로세스를 생성하는 방법은 크게 2가지, 종료하는 방법은 크게 4가지.

5. 1 DMA 0~1번 Device가 Timer Device 이다. 5. 2 Protected Instruction - user application 접근 불가능, 운영체제만 사용 가능한 명령어 - mode bit는 CPU안에 있다. - 모드는 보호 된 프로세서 레지스터의 상태 비트에 의해 설정. - protected는 CPU가 아닌 OS에서 관리한다. - user program은 권한있는 것을 사용하기 위해 OS를 호출해야 한다.(system call을 호출) 5. 3 Memory Protection - OS는 user program간에 메모리를 보호해주어야 한다. - OS는 자기자신을 보호할 수 있어야한다. - 어떤 program이 실행되는지에 따라서 reg값을 계속 load 해온다. (reg의 개..

4. 1 Interrupts - interrupts와 exceptions 가 발생하면 모든 실행권한을 운영체제에게 넘겨준다. - polling: CPU가 계속 check. - Hardware interrupts: 하드웨어가 알려준다. CPU는 그동안 다른 작업 가능. - interrupts handler에 interrupt마다 해결할 각각의 방법의 code가 들어있다. 4. 2 Exceptions - system call ex) Open, Create, Read, Write, Close... - system call table: 운영체제는 약 350 여개의 system call을 정의해 두었다.