ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 1. Introduction to Operating Systems
    OS/운영체제 강의정리 2021. 12. 30. 15:49

    1. Introduction to Operating Systems

    운영체제란 무엇인가, 운영체제의 목적, 운영체제의 분류, 운영체제의 예, 운영체제의 구조

     

    운영체제란?

    컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층

    협의 : 운영체제의 핵심 부분으로 메모리에 상주하는 부분 (커널)

    광의 : 커널 뿐만 아니라 각종 주변 시스템 유틸리티를 포함한 개념 (메모리에 상주하지않는 별도의 프로그램이다!)

     

    https://woovictory.github.io/2018/12/21/OS-info/

    목적

    1. 컴퓨터시스템의 자원을 효율적으로 관리 (하드웨어를 효율적으로 관리하는것)

    자원은 프로세서, 기억장치, 입출력 장치 즉 리소스를 효율적으로 관리 하는 것을 의미함.

    주어진 자원으로 최대한의 성능을 내도록 (효율성)

    사용자간의 형평성 있는 자원 분배 (형평성)

    2. 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공함

    운영체제의 분류

    1. 동시작업가능 여부
      1. 단일 작업
      2. 다중 작업
    2. 사용자의수
      1. 단일 사용자 (MS-DOS, MS-Windows)
      2. 다중사용자 (UNIX, NT server)
    3. 처리방식
      1. 일괄처리(batch processing) : 작업을 모아서 한꺼번에 처리
        1. 초기 Punch Card 처리 시스템
      2. 시분할(time sharing) : 여러작업 수행 시 첨퓨터 처리능력을 일정한 시간단위로 분할하여 사용 (짧은 응답시간을 가짐) (interactive 방식)
      3. 실시간(Realtime OS) : 정해진 시간안에 어떠한 일이 반드시 종료됨이 보장되어야함 (데드라인 있음!!!)
        1. 원자로,공장 제어, 미사일제어, 반도체 장비, 로보트 제어와 같은 정확한 시간을 맞춰야하는 작업들...

    용어 정리 

    Multitasking : 하나의 프로그램이 끝나기전에 다른 프로그램이 실행이 가능함

    Multiprogramming : 메모리에 여러프로그램이 동시에 올라가는 방식 (메모리를 강조한방식)

    Time sharing : 시간을 공유해서 (CPU를 강조한방식)

    Multiprocess : 여러프로그램이 동시에 실행된다

    컴퓨터에서 여러 작업을 동시에 수행한다. (CPU가 하나 있음에도 동시에)

    Multiprocessor : 하나의 컴퓨터에 CPU가 여러 개 붙어있음을 의미함 processor 보통 CPU(처리기)를 말함, CPU가 여러개인걸 다중처리기

    • 유닉스 : 코드의 대부분을 C언어로 작성, 높은 이식성, 최소한의 커널 구조, 복잡한 시스템에 맞게 확장 용이, 소스코드 공개, 프로그램 개발에 용이, 다양한 버전존재(Linux)
    • DOS(Disk Operating System) : 단일 사용자용 운영체제, 메모리 관리 능력의 한계 (주 기억장치 : 640KB)
    • MS Windows: MS사의 다중 작업용 GUI 기반 운영체제, Plug and Playm 네트워크 환경 강화, DOS용 응용 프로그램과 호환성 제공, 불안정성, 풍부한 지원 소프트웨어

     

    <강의 외 정리>

    CPU : 컴퓨터에서 연산을 담당

    메인 메모리 : 컴퓨터에서 작동하고 있는 프로그램인 프로세서들을 저장/관리

    하드디스크 : 아직 사용하지 않는 프로그램들을 저장

    컴퓨터를 on 시키기전에는 운영체제는 하드디스크에 존재한다. 컴퓨터를 on 시키면 하드디스크에 있는 운영체제가 메인메모리로 올라가게된다.

     

    Process management : 프로세스는 메모리에서 실행중인 프로그램이다. 보통의 경우 컴퓨터가 실행되면 아직 대부분의 프로그램들은 하드디스크에 보관되어있다. 프로그램 실행 시 하드디스크에서 메모리로 옮겨지게 된다. (프로세스) 운영체제는 프로세스에게 CPU를 할당해야함. CPU는 하나이기 때문에 어떤 프로세스를 실행시킬지 운영체제가 결정한다. Process management = CPU스케쥴링 역할

     

    Main memory management : 프로세스가 되려면 메인 메모리로 프로그램이 올라와야한다. 운영체제는 이과정에서 역할을 한다. 프로그램에게 메모리 공간을 할당하고 다시 하드디스크로 보내주는 역할을 수행함. 메모리의 공간이 한정되어 있으므로 프로세스를 잘 적재하는 것 또한 중요한 역할임

     

    File management : 파일이라고 하는 것은 track/sector로 구성된 디스크를 논리적 관점으로 표현한 것. 파일을 생성하고 삭제, 디텍토리 생성, 삭제 등 파일에 관련된 역할을 수행하는 것도 운영체제가 한다.

     

    Secondary storage management : 하드디스크나 플래시 메모리와 같은 보조기억장치에 대한 관리도 운영체제가 맡아서 한다. 빈 공간에 대한 관리나 저장 공간 할당, 디스크 스케쥴링과 같은 역할 수행한다.

     

    I/O device management : 장치 드라이브나 입출력 장치의 성능 향상을 위한 역할을 수행함. 프로세스가 I/O의 사용이 필요하면 적절하게 연결해주는 역할을 함.

     

    https://copycode.tistory.com/44?category=740133

     

    댓글

Designed by Tistory.