운영체제 1주차 스터디노트
운영체제 개요 & 컴퓨터 시스템동작원리
운영체제는 무엇이고 어떤 역할을 수행하는지 설명해주세요
- 운영체제란 컴퓨터 하드웨어 바로 윗단에 설치되는 소프트웨어
- 역할은 하드웨어 쪽에서는 사용자가 직접 다루기 힘든 각종 하드웨어를 운영체제가 관리하는 역할을 하고
사용자에게는 편리한 인터페이스를 제공하는 역할을 제공해준다
시분할 시스템에 대해서 설명해주세요
- 시분할 시스템이란 CPU의 작업시간을 여러 프로그램들이 조금씩 나누어 쓰는 시스템
다중 프로그래밍 시스템(multi-programming system)에 대해서 설명해주세요
- 다중 프로그래밍 시스템이란 메모리 공간을 분할해 여러 프로그램들을 동시에 메모리에 올려놓고 처리하는 시스템
대화형 시스템(interactive system)에 대해서 설명해주세요
- 각 프로그램에 대한 키보드 입력의 결과를 곧바로 화면에 보여주는 것
다중 처리기 시스템(multi-processor system)에 대해서 설명해주세요
- 하나의 컴퓨터 안에 CPU가 여러 개 설치된 시스템
시스템 콜에 대해 설명해주세요
- 시스템 콜이란 사용자 프로그램이 운영체제 내부에 정의된 코드를 실행하고 싶을 때 운영체제에 서비스를 요청하는 방법
커널에 대해 설명해주세요
커널모드에 대해 설명해주세요
- 커널모드는 운영체제가 CPU의 제어권을 가지고 운영체제 코드를 실행하는 모드로서, 이 모드에서는 모든 종류의 명령을 다 실행할 수 있다
유저모드에 대해 설명해주세요
- 유저모드에서는 일반 사용자 프로그램이 실행되며 제한적인 명령만 수행할 수 있다
폴링에 대해 설명해주세요
- 폴링이란 운영체제가 주기적으로 장치 컨트롤러의 상태 레지스터를 확인하며 입출력장치의 상태가 어떠한지, 처리할 데이터가 있는지 확인하는 것
인터럽트에 대해 설명해주세요
- 주변장치들은 CPU의 서비스가 필요한 경우에 신호를 발생시켜 서비스를 요청하는데, 이때 발생시키는 신호를 인터럽트라고 한다
DMA에 대해 설명해주세요
- DMA(Direct Memory Access)는 주변장치 컨트롤러의 로컬버퍼에서 메모리로 읽어오는 작업을 CPU 대신 대행해준다.
- DMA는 바이트 단위가 아니라 블록이라는 큰 단위로 메모리로 읽어온 후에 CPU에게 인터럽트를 발생시켜 해당 작업의 완료를 알려준다
동기식 I/O에 대해 설명해주세요
- 동기식 입출력(synchronous I/O)은 어떤 프로그램이 입출력 요청을 했을 때 입출력 작업이 완료된 후에야 그 프로그램이 후속 작업을 할 수 있는 방식
- 동기식 입출력은 입출력이 진행되는 동안 그 프로그램의 다음 명령을 수행하지 않고 기다린다. 그러다가 입출력이 완료되어 인터럽트를 통해 그 사실이 전달된 후에야 CPU의 제어권이 그 프로그램에게 넘어가서 다음 명령을 수행할 수 있게 된다.
비동기식 I/O에 대해 설명해주세요
- 비동기식 입출력은 입출력 연산을 요청한 후에도 CPU의 제어권이 입출력 연산을 호출한 그 프로그램에게 곧바로 다시 부여되는 방식을 말한다.
회고
- 운영체제에서 인터럽트나 폴링부분은 CPU, 레지스터, 주변장치와 연관이 있는 내용이라서 컴퓨터 구조에 대한 지식도 요구하는 것 같다.