운영체제

augusstt·2022년 10월 21일
0

CS

목록 보기
6/11
post-thumbnail

이 글은 "혼자 공부하는 컴퓨터 구조 + 운영체제"를 읽고 이해한 내용을 복습하기 위해 작성하는 글입니다.

이미지 출처 : 혼자 공부하는 컴퓨터 구조 + 운영체제

운영체제

  • 실행할 프로그램에 필요한 자원을 할당하고, 프로그램이 올바르게 실행되게 돕는 프로그램

  • 메모리 내의 커널 영역에 저장되어 부팅될때 실행

1. 커널

  1. 프로그램이 안전하게 실행되고, 자원에 접근하고 조작하는 역할

    • 사용자 인터페이스 : 사용자가 컴퓨터와 상호작용 하는 통로

    • 그래픽 유저 인터페이스
      - 그래픽을(화면) 기반으로 상호작용하는 인터페이스

    • 커맨드 라인 인터페이스
      - 명령어를 기반으로 상호작용하는 인터페이스

      같은 운영체제라도 사용자 인터페이스는 다를수 있다.

2. 이중모드

  • CPU가 명령어를 실행하는 모드를 사용자 / 커널 모드르 구분하는 방식
    1. 사용자 모드

      • 운영체제 서비스를 제공받을 수 없는 실행 모드

        • 사용자 모드르 실행되는 응용 프로그램은 자원에 접근 불가능
    2. 커널 모드

      • 운영체제 서비스를 제공받을 수 있는 실행 모드
    3. 시스템 호출

      • 사용자 모드 > 커널 모드로 전환하기 위해 보내는 요청

        • 일종의 소프트웨어 인터럽트

        시스템 호출

3. 운영체제의 핵심 서비스

  1. 프로세스 관리

    • 하나의 CPU는 한번에 하나의 프로세스만 실행 가능

    • 한 프로세스 실행 > 다른 프로세스 실행 > 다른 프로세스 실행 반복

  2. 자원 접근 / 할당

    • CPU
      - CPU 스케줄링

      • 각각의 프로세스들에게 공정하게 CPU를 할당하기 위해 어떤 프로세스부터 CPU를 이용하고 얼마나 오래 이용할 건지 결정하는 것
    • 메모리

    • 입출력 장치

  3. 파일 시스템 관리

profile
https://augusstt-note.gitbook.io/aug-note 로 블로그 이전했습니다!

0개의 댓글