[운영체제]운영체제 개념 및 컴퓨터 시스템 구조
운영체제 :
컴퓨터 시스템의 자원을 효율적으로 관리
(프로세서, 기억장치, 입출력 장치)
-한정된 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 : 사용자 프로그램이 운영체제의 서비스를 받기 위해 커널 함수를 호출 하는 것