inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

운영체제

harugi7
0

*이 내용은 인프런 그림으로 쉽게 배우는 운영체제를 수강하며 정리한 내용입니다.

 

운영 체제의 구조

운영 체제의 핵심은 커널이야.

커널은 프로세스와 메모리, 저장장치를 관리하는 핵심적인 기능을 담당해.

사용자는 운영 체제의 커널에 직접 접근할 수 없고, 인터페이스를 통해서 접근할 수 있어.

인터페이스는 GUI, CLI로 나눌 수 있어. 이 두가지는 텍스트냐, 이미지냐의 차이이지 커널에 접근하기 위한 목적은 같아!

커널은 사용자로부터 자신을 보호하기 위한 시스템 콜이라는 인터페이스를 갖고있어.

시스템 콜 없이 애플리케이션이 하드디스크에 접근하게되면 중요한 정보를 덮어쓸 수 있어...

시스템 콜을 이용하면 자동으로 빈 공간에 저장하도록 해줘 ( 복잡하네😅 )

 

사용자, 애플리케이션커널과의 인터페이스로 시스템 콜을 사용한다고 했는데,

하드웨어커널과의 인터페이스로는 드라이버를 사용해...!

 

컴퓨터 하드웨어와 구조

대부분이 폰 노이만 구조를 하고있어.

CPU와 메모리를 두는 구조로, 배선을 바꾸는 대신 소프트웨어만 바꿔주면 되므로 편해졌어!

CPU와 메모리를 연결하는 버스를 통해 명령어를 읽고, 데이터를 읽고 써.

 

컴퓨터 하드웨어에는 메인보드가 있어. 메인보드는 다른 하드웨어를 연결하는 장치야. 마우스 키보드 등등...

장치 간에 데이터를 전송하는 건 메인보드의 버스가 담당해.

CPU와 메모리를 메인보드에 꽂아줘. ( 폰 노이만 구조니까~ )

하드디스크 연결 단자에는 하드디스크를 꽂아주면 돼. 마찬가지로 그래픽카드 연결 단자에는 그래픽 카드를 꽂아줘.

출력 단자의 모니터 선을 꽂으면 모니터가 작동하게 돼.

 

CPU 구조

Central Processing Unit의 약자로, 중앙 처리 장치라고 불려.

 

메모리 종류

 

컴퓨터의 부팅과정

  1. 컴퓨터의 전원을 누른다.

  2. ROM에 저장된 바이오스가 실행된다. ( 바이오스: 전원, CPU, 메모리, 키보드, 하드디스크 등 주요 하드웨어에 이상이 없는지 확인해. )

  3. 이상이 없다면 하드디스크에 있는 마스터 부트 레코드에 저장된 부트로더를 메모리로 가져와서 바이오스가 실행한다.

  4. 만약 윈도우즈 운영체제와 리눅스 운영체제가 둘 다 설치되어있는 컴퓨터라면 어떤 운영체제를 실행할지 선택하는 화면이 나온다.

  5. 운영 체제를 메모리로 불러오고 모니터에 바탕화면이 보이게 된다.

  6. 이제부터 실행되는 모든 응용 프로그램은 메모리에 올라와서 운영체제가 관리한다.

 

인터럽트

CPU가 입출력 장치에 데이터를 읽거나 쓰려고 하는 상황을 생각해보자.

CPU는 입출력 작업이 들어오면 입출력 관리자에게 입출력 명령을 내려.

CPU 관점에서는 입출력 명령이 언제 완료될지 알 수 없기 때문에 주기적으로 확인해줘야해!!

이러한 방식을 폴링(Polling) 방식이라고 해

폴링 방식의 단점은 주기적으로 CPU가 확인해줘야하니 성능이 좋지 않다는 점이야.

 

인터럽트는 폴링 방식의 단점을 해결한 방식이야.

CPU가 입출력 관리자에게 입출력 명령을 내리고 자기는 다른 일을 해.

입출력 관리자는 입출력 명령이 완료되었을 때 CPU에게 신호를 주고, CPU는 그 신호를 받아서 ISR(Interrupt Service Routine)을 실행시켜 작업을 완료해.

ISR은 특정 인터럽트가 들어오면 그 인터럽트를 처리하는 방식이야.

인터럽트는 비동기적으로 작동하기 때문에 성능에 이점이 있어.

 


참조 : 그림으로 쉽게 배우는 운영체제

 

운영체제 워밍업클럽 CS

답변 0