[운영체제]

hoya.a·2022년 7월 18일
0

1. os 란?

컴퓨터 하드웨어 바로 윗단에 설치되어
하드웨어와 각종소프트웨어들 그리고 사용자를 연결해주는 계층

  • 운영체제의 좁은 의미 : 운영체제의 핵심부분. 부팅이 일어나고 항상 메모리에 상주하는 부분
  • 운영체제의 넓은 의미 : 커널부분뿐만 아니라 각종 주변 시스템 유틸리티를 포함한 개념

하드웨어 위에 OS를 깔게 되면 최소한의 필요한 유틸리티들도 깔리게 되는데 이것들도 포함해서 os라 한다.

넓은의미의 OS에 포함되는 것들은 메모리에 상주하지 않는 독립적인 프로그램들 이지만 OS범주에는 포함시키는 것. 전공자 입장에서는 os란 커널만을 의미한다.

2. os의 목적

  1. 하드웨어를 효율적으로 관리하는 역할이 가장 중요한 목적(자원을 효율적으로 관리)
  • 자원 : cpu, 메모리, 각종 입출력 장치
  • 관리 하다보면 특정 프로그램이나 사용자가 차별받는 경우 어느정도 형평성 있게 배분할 수 있게 도와주는 것도 os의 목적이다.
  1. 컴퓨터 시스템을 편리하게 사용가능하게 한다.
  2. 사용자가 편리하게 컴퓨터를 다룰 수 있게 도와준다.

3. os의 분류

  1. 동시 작업 가능 여부
  • 단일 작업
    한번에 하나의 작업만 처리. 설계는 쉽지만 현대에는 보기 힘들다.
  • 다중 작업
    동시에 두 개 이상의 작업 처리.
  1. 사용자 수
  • 단일 사용자
  • 다중 사용자
  • 보안기능추가, 형평성 있는 자원 배분 필요
  1. 처리 방식
  • 일괄처리(batch processing)
    - 작업을 모아서 한번에 처리하는 방식
  • 시분할(time sharing)
    - 여러 작업을 수행할 때 컴퓨터 처리 능력을 일정한 시간 단위로 분할하여 사용
    - 각각의 사용자 입장에서 interative한 서비스를 받을 수 있다. -> 바로 결과가 화면에 나온다.
  • 실시간(Realtime OS)
    - 정해진 시간 안에 어떠한 일이 반드시 종료됨이 보장되어야 하는 실시간 시스템을 위한 OS

4. 운영체제의 예

유닉스 계열

  • 대형 컴퓨터를 위해 만들어졌다
  • 코드의 대부분을 c언어로 작성
  • 최소한의 컨널 구조
  • 소스코드 공개
  • Linux

DOS

  • MS사에서 1981년 IBM-PC를 위해 개발
  • 단일 사용자용 운영체제, 메모리 관리 능력의 한계

MS Windows

  • MS사의 다중 작업용 GUI 기반 운영 체제
  • Plug and Play, 네트워크 환경 강화

등등 시간이 갈수록 여러 운영체제들이 생겨나고 발전했다.

5. 운영체제의 구조

CPU 스케쥴링 - 누구한테 CPU를 줄까 결정하는 것
메모리 관리 - 한정된 메모를 어떻게 쪼개 쓸까 결정하는 것
파일관리 - 디스크에 파일을 어떻게 보관할지 결정하는 것
입출력 관리 - 각 다른 입출력장치와 컴퓨터 간에 어떻게 정보를 주고 받게 하지

profile
TIL 정리

0개의 댓글