개인공부

[운영체제]운영체제 개념 및 컴퓨터 시스템 구조

Unknown200 2021. 6. 23. 17:07

운영체제 :

컴퓨터 시스템의 자원을 효율적으로 관리
(프로세서, 기억장치, 입출력 장치)
-한정된 cpu를 가지고 메모리 공간을 적절히 분배
커널 - 메모리에 상주하는 부분
광의의 운영체제 - 메모리에 상주하지 않는 부분

 

[처리 방식]
-일괄처리batch processing : 한꺼번에 모아서 처리
-시분할 처리 time sharing : 시간을 분배하여 처리
-실시간 처리 realtime os : 선착순으로 처리

 

-Mode bit : 사용자 프로그램의 잘못된 수행으로 다른 프로그램 및 운영체제에 피해가 가지 않도록 하지 위한 보호 장치
-cpu는 memory와 local buffer에 접근이 가능하지만 Device Controller는 자신의 localbuffer에만 접근이 가능하다
-DMA controller는 direct memory access 로 메모리가 접근이 가능하다 / i/o가 인터럽트를 걸때 cpu작업을 대신 해서 cpu에게 알려준다


-Device Controller(장치제어기) : I/o장치를 관리하는 일종의 작은 CPU -> hardward
(control register, status register)
-device driver(장치 구동기) : os코드 중 각 장치별 처리 루틴 -> softward

 

인터럽트 :
인터럽트를 당한 시점의 레지스터와 program counter를 save한 후 CPU의 제어를 인터럽트 처리 루틴에 넘긴다

interrupt(넓은 의미)
-하드웨어 인터럽트(interrupt) : 하드웨어가 발생시킨 인터럽트
-소프트웨어 인터럽트(trap):
1) Exception : 프로그램이 오류를 범한 경우
2) System call : 프로그램이 커널 함수를 호출 하는 경우


[관련 용어]
인터럽트 벡터 : 해당 인터럽트의 처리 루틴 주소를 가지고 있음
인터럽트 처리 루틴( =interrupt Service Routine, 인터럽트 핸들러) : 해당 인터럽트를 처리하는 커널 함수

*현대의 운영체제는 인터럽트에 의해 구동됨
System call : 사용자 프로그램이 운영체제의 서비스를 받기 위해 커널 함수를 호출 하는 것