02. 운영체제

민주·2023년 10월 24일
0

CS

목록 보기
2/22

운영체제 하는 일

  • CPU 스케줄링
  • 파일관리(디스크에 파일 어떻게 보관하지)
  • 메모리 관리(한정된 메모리 어떻게 쪼개지)
  • 입출력 관리
  • 프로세스 관리(자원할당 및 반환), 보호시스템, 네트워킹
    Mode bit (하드웨어)- 보호장치. 사용자 프로그램의 잘못된 수행이 운영체제에 피해가 가면 안됨.
    1: 사용자 모드
    0: 모니터모드(커널모드, 시스템 모드, OS 코드 수행)
    특권명령 : 보안을 해칠 수 있는 중요한 명령어는 모니터 모드에서만 수행 가능
    타이머
    정해진 시간이 흐른 뒤 운영체제에게 제어권이 넘어가도록 인터럽트 발생.
    타이머 값이 0이 되면 타이머 인터럽트 발생.
    독점으로부터 보호. For time sharing. 현재 시간 계산 위해서도 사용

Device controller
일종의 작은 cpu. Register을 가짐.
I/O가 끝났을 때 interrupt로 cpu에 그 사실을 알림.

Device driver 장치 구동기. 각 장치별 처리 루틴.

모든 입출력 명령은 특권 명령.

사용자 프로그램은 어떻게 I/O를 하는가?
시스템콜 : 사용자 프로그램이 운영체제의 서비스를 받기 위해 커널 함수를 호출하는 것

  • 사용자 프로그램은 운영체제에게 I/O 요청
  • Trap 사용하여 인터럽트 벡터의 특정 위치로 이동
  • 제어권이 인터럽트 벡터(해당 인터럽트의 처리 루틴(인터럽트를 처리하는 커널 함수) 주소)가 가리키는 인터럽트 서비스 루틴으로 이동
  • 올바른 요청인지 확인 후 수행
  • I/O 완료 시 제어권을 시스템콜 다음 명령으로 옮김
    Trap 걸리면 mode bit이 0으로 바뀐다.

인터럽트: 보통 하드웨어 인터럽트. 소프트웨어 인터럽트는 trap이라 함. Ex) Exception, System call

profile
일단 가보면 뭐든 있겠지

0개의 댓글