KOCW > 이화여자대학교 반효경 교수님 > 운영체제 > 2. 컴퓨터시스템의 구조(2)
2. 컴퓨터시스템의 구조(2)
컴퓨터 시스템 구조
- 메모리에 OS가 상주하고, 프로그램 실행시 프로그램이 메모리에 올라가는 구조
- 그리고 각각의 장치에 컨트롤러가 붙어 연산을 담당
- CPU의 mode bit: CPU가 OS에 의해 실행될 때와 사용자 프로그램을 실행할 때를 구분함
Mode bit
- 사용자 프로그램의 잘못된 수행으로 다른 프로그램 및 운영체제에 피해가 가지 않도록 하기 위한 보호 장치
- 1(사용자 모드): 사용자 프로그램 수행
- 사용자 프로그램에게 CPU를 넘기기 전에 mode bit을 1로 셋팅
- 0(모니터 모드 = 커널모드, 시스템 모드): OS 코드 수행
- 특권명령: 보안을 해칠 수 있는 중요한 명령어는 모니터 모드에서만 수행 가능
- Interrupt나 Exception 발생 시, 하드웨어가 mode bit을 0으로 변경
- CPU의 Interrupt line이 다른 장치가 발생시키는 Interrupt를 수용
- CPU의 registers가 연산을 저장
- registers 중 프로그램 카운터(PC)가 다음에 실행할 프로세스의 메모리 주소를 가지고 있음
Timer
- 사용자 프로그램의 CPU 독점 혹은 무한 루프를 막기 위해 일정 시간을 체크하며 Interrupt를 발생 시킴
- 매 클럭 틱마다 1씩 감소, 타이머 값이 0이 되면 타이머 인터럽트 발생
- time sharing을 구현하기 위해 널리 이용
- 현재 시간을 계산하는데도 사용