운영체제의 개요(OS)

단셰·2022년 10월 16일
0

1. 운영체제의 개요

1-1 운영체제(OS, Operating System)의 정의

  • 응용 프로그램 or 사용자에게 컴퓨터 자원을 사용할 수 있는 인터페이스를 제공하고 그 결과를 돌려주는 시스템 소프트웨어
  • 일반 컴퓨터, 노트북, 스마트폰의 전원을 켜면 가장 먼저 만나게 되는 소프트웨어(ex - 윈도우, MacOS, 유닉스, 리눅스, ios, Android 등)
  • 응용 프로그램 or 사용자에게 모든 컴퓨터 자원을 숨기고 정해진 방법으로만 컴퓨터 자원을 사용할 수 있도록 제한(자원 관리, 자원 보호)

1-2 운영체제의 역할 및 목표

역할목표
자원 관리효율성
자원 보호안정성
하드웨어 인터페이스 제공확장성
사용자 인터페이스(UI) 제공편리성

운영체제의 역할

  • 자원관리 : 컴퓨터 시스템의 자원을 응용프로그램에 나눠주어 사용자가 원활하게 작업할 수 있도록 함
  • 자원 보호 : 비정상적인 작업으로부터 컴퓨터 자원을 보호
  • 하드웨어 인터페이스 제공 : 사용자가 복잡한 과정 없이 다양한 장치를 사용할 수 있도록 해줌
  • 사용자 인터페이스(UI) 제공 : 사용자가 운영체제를 편리하게 사용하도록 지원

운영체제의 목표

  • 효율성 : 자원을 효율적으로 관리 (ex - 같은 자원으로 더 많이 작업량 처리)
  • 안정성 : 작업을 안정적으로 처리. 하드웨어적인 보안 문제 처리. 시스템에 문제 발생 시, 복구하는 결함 포용 기능 수행
  • 확장성 : 다양한 시스템 자원을 컴퓨터에 추가/제거하기에 편리한 것
  • 편리성 : 사용자가 편리하게 작업할 수 있는 환경을 제공하는 것

1-3 일괄 작업 시스템 (1950년대)

  • 천공카드리더기(입력)와 라인프린터(출력) 사용
    : 모든 작업을 한꺼번에 처리하고 프로그램 실행 중간에 데이터 수정 및 입력을 할 수 없음

1-4 시분할 시스템 (1960년대)

  • CPU 사용시간을 잘게 쪼개어 작업들에 나누어줌으로써 프로그램이 동시에 돌아가게 하는 것처럼 보임
  • 나뉜 시간의 한 조각 ⇒ 타임 슬라이스 / 타임 퀀덤

1-5 클라우드 컴퓨팅 (2000년대 초~)

  • 언제 어디서나 응용 프로그램과 데이터를 자유롭게 이용 가능한 컴퓨팅 환경
  • 그리드 컴퓨팅 + SaaS 형태
  • 하드웨어에 포함된 시스템이 구름에 가린 것처럼 사용자에게 보이지 않는 컴퓨팅 환경이라는 뜻

1-6 커널 (Kernel)

  • 운영체제의 핵심적인 기능을 모아놓은 것
  • 핵심기능 (프로세스 관리, 메모리 관리, 입출력 장치 관리, 저장 장치 관리, 프로세스 간 통신 관리)
  • 우리가 하는 모든 작업은 여기에서 이루어짐 ,,
  • 종류에는 단일형 구조 커널, 계층형 구조 커널, 마이크로 구조 커널이 있음

1-7 인터페이스 (Interface)

  • 커널에 사용자의 명령을 전달하고 실행결과를 알려주는 역할

1-8 시스템 호출

  • 커널이 자기 보호를 위해 만든 인터페이스
  • 커널이 제공하는 시스템 자원의 사용과 연관된 함수
  • 응용 프로그램이 하드웨어 자원이나 OS가 제공하는 서비스에 접근하려고 하면 시스템 호출을 사용해야 함
  • 사용자가 직접 자원에 접근하는 것을 차단 (자원 보호 - 안정성)

HOW?

응용 프로그램이 커널이 제공하는 write() 함수를 통해 하드디스크에서 데이터를 저장해달라고 요청하는 방식
profile
Happy Hacking!

0개의 댓글