운영체제의 개요

2023. 10. 26. 09:39리눅스/리눅스마스터1급

728x90
반응형

정의, 역할, 목적

정의

사용자와 하드웨어 간의 상호작용을 위해 사용자 인터페이스를 제공하는 "시스템 소프트웨어"이다.
컴퓨터의 중앙처리장치, 메모리 및 주변 장치 등 하드웨어를 효율적으로 관리
응용 프로그램이 동작할 수 있는 환경, 즉 프로그래밍 인터페이스를 제공
OS = Shell + App + Kernel

목적

일정 시간 동안 처리하는 일의 양을 의미하는 "처리능력(Throughput)"의 향상을 목적으로 한다.
작업 의뢰 후 시스템에서 결과를 얻어질 때까지의 시간을 의미하는 반환 시간(Turnaround TIme)의 최소화를 목적으로 한다.
주어진 문제를 정확하게 처리하는 정도를 뜻하는 신뢰도(Reliablility)의 향상을 목적으로 한다.
이용할 수 있는 시스템의 자원이 어느 정도인가를 의미하는 사용 가능도(Availability)의 향상을 목적으로 한다.

운영체제의 목적

운영체제의 목적에는 처리능력 향상, 반환 시간 단축, 사용 가능도 향상, 신뢰도 향상 등이 있다. 처리능력, 반환시간, 사용가능도, 신뢰도는 운영체제의 성능을 평가하는 기준이 된다.

  • 처리능력(Throughput) : 일정 시간 내에 시스템이 처리하는 일의 양
  • 반환시간(Turn Around Time) : 시스템에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린 시간
  • 사용가능도(Availability) : 시스템을 사용할 필요가 있을 때 즉시 사용 가능한 정도
  • 신뢰도(Reliabilty) : 시스템이 주어진 문제를 정확하게 해결하는 정도

역할

사용자의 하드웨어 접근이 용이하도록 운영체제가 하드웨어 제어, 입력, 출력 등의 관리를 수행한다.
한정된 하드웨어 자원을 다수의 이용자가 공유할 수 있는 기능을 수행한다.
프로세스, 메모리, CPU 등의 한정된 자원의 용량을 효율적으로 사용하기 위하여 자원 스케줄링을 제공한다.
응용 프로그램의 작성과 실행이 편리하도록 시스템 호출(system call)을 제공한다.
예상치 못한 오류가 발생하더라도 시스템을 중단하지 않고 실행할 수 있도록 오류 복구 기능을 제공한다.
사용자의 다양하고 수많은 데이터를 조직화하고 저장할 수 있는 파일 관리 및 데이터베이스 기능을 제공한다.
원격의 컴퓨터와 연결할 수 있는 네트워크 기능을 제공한다.
사용자에게 편리한 사용자 인터페이스를 제공한다.
시스템 호출은 커널이 제공하는 서비스로 운영체제의 기능을 응용 프로그램이 사용할 수 있도록 해준다.

운영체제의 구조와 기능

구조

사용자는 시스템의 기능을 이용하기 위해 필요한 응용 프로그램을 실행하거나 셸, GUI, 배치 작업를 통하여 운영체제의 기능을 사용한다.  * 배치 작업(작업을 실시간으로 처리하지 않고 특정 시점에 일괄적으로 실행이 필요한 작업)

응용 프로그램은 시스템 호출을 통하여 커널의 서비스를 이용할 수 있다.

운영체제는 다양한 하드웨어에 대한 이식성을 향상하기 위해 하드웨어 추상 계층(HAL)을 제공한다.

 

 

기능

프로세스, 메모리, 장치 I/O, 파일 시스템 등 리소스 관리 기능 제공

자원을 효율적인 사용을 위하여 자원 스케줄링 기능 제공

LAN 카드, USB 장치, 디스크 등 다양한 하드웨어의 관리와 네트워크 주소 할당, 네트워크 생성, 경로 설정 등 다양한 네트워크 제어 기능 제공

파일 시스템이나 데이터베이스를 통해 데이터를 생성, 저장, 조회 등 데이터 관리 기능과 파일 및 네트워크와 같은 자원 공유 기능을 제공

사용자, 프로세스와 같은 주체가 파일이나 네트워크와 같은 자원에 무분별하게 접근하는 것을 방지하기 위한 자원 보호 기능을 제공

디스크 및 파일 시스템과 같은 시스템의 손상이 있는지 점검하기 위한 오류 검사 기능과 오류 발생 시 복구할 수 있는 기능 제공

자원의 유휴 시간을 최소화 하기 위해 물리적 컴퓨터에 가상의 컴퓨터를 여러 대 실행할 수 있는 가상화 기능 제공

 

운영체제의 기능

  • 프로세서, 기억장치, 입출력 장치, 파일 및 정보 등의 자원을 관리
  • 자원을 효율적으로 관리하기 위해 자원의 스케줄링 기능 제공
  • 사용자와 시스템 간의 편리한 인터페이스를 제공
  • 시스템의 각종 하드웨어와 네트워크를 관리 및 제어
  • 데이터를 관리하고 데이터 및 자원의 공유 기능 제공
  • 시스템의 오류를 검사 및 복구
  • 자원 보호 기능 제공
  • 입출력 보조 기능 제공

 

참조사이트:

https://math-coding.tistory.com/80

 

[Operating System] 운영체제의 구조

이 글은 '쉽게 배우는 운영체제' 책을 토대로 작성하였습니다 커널과 인터페이스 커널 프로세스 관리, 메모리 관리, 저장장치 관리와 같은 운영체제의 핵심적인 기능을 모아놓은 것으로, 자동차

math-coding.tistory.com

https://m.blog.naver.com/adamdoha/222027573357

 

[OS] 운영체제의 개념

운영체제의 정의 ▪ 하드웨어를 제어하는 소프트웨어입니다. ▪ 하드웨어를 활용할 수 있도록 펌웨어(Firm...

blog.naver.com

https://computer-science-student.tistory.com/384

 

운영체제(OS, Operating System) - 정의, 종류, 기능, 목적

운영체제(OS, Operating System)란? 운영체제(OS, Operating System)는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고, 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프

computer-science-student.tistory.com

반응형

'리눅스 > 리눅스마스터1급' 카테고리의 다른 글

사용자 권한 및 그룹설정  (0) 2023.11.09