운영체제의 시작과 발전 - 운영체제의 개념

이재민·2023년 3월 17일
0

운영체제

목록 보기
1/2

1.1 운영체제의 정의

운영체제란 무엇을 의미할까?
오늘날 우리는 컴퓨터를 이용하며 window, mac등의 운영체제를 사용한다. 운영체제를 컴퓨터와 혼동하여 생각할 수 있지만 운영페제는 실체가 있는 소프트웨어를 가르킨다.

운영체제는 다양하게 정의 할 수 있는데

  • 사용자와 컴퓨터 하드웨어 사이에서 중계 역할을 하면서, 프로그램의 실행을 관리하고 제어하는 시스템 소프트웨어

  • 컴퓨터의 모든 자원을 독점적으로 관리하는 특별한 소프트웨어

등으로 설명할 수 있다.

두번째 정의를 바탕으로 운영체제를 속성을 파악해 보자

운영체제는 모든 컴퓨터 자원을 관리한다

컴퓨터에서 자원이란 다음을 말한다.

  • 하드웨어 자원 : CPU, 캐시, 마우스, 키보드 등
  • 소프트웨어 자원 : 응용프로그램
  • 데이터 자원 : 파일, 데이터베이스

운영체제는 컴퓨터 자원이 모든 사용자와 모든 응용프로그램에 의해 잘 공유되도록 관리하는 소프트웨어이다

운영체제는 자원을 독점한다.

독점의 의미는 자원에 대한 접근, 관리 권한이 오직 운영체제에게 있다는 것을 의미한다.
우리가 컴퓨터를 이용할 때 파일을 만들고 저장하는 것을 우리가 직접한다고 착각하기 쉽다. 실은 이 파일이 하드디스크에 실제로 어디에 저장되는지 사용자는 알지 못한다. 이를 관리하는 것은 오로지 운영체제의 몫이다. 운영체제가 자원을 독점 하는 이유는 사용자와 응용프로그램들로 부터 자원의 훼손을 막고 효과적으로 공유하기 위해서 이다

운영체제는 관리자(supervisor)이다

관리는 크게 네가지로 구분한다.

  • 사용자에 대한 관리
    ex) 로그인 계정, 비밀번호, 통계정보 등
  • 프로그램의 실행에 관한 자원 관리
    ex) 프로그램에 대한 메모지 할당 및 메모리 보호, 프로그램의 스케줄링, 정장 공간 관리등
  • 성능 관리
    ex)운영체제는 자원의 활용률을 높여 동시에 프로그램이 처리 될 수 있도록 처리율을 높이고
    사용자에게 빠른 응답을 제공하는 성능 극대화에 목표를 둔다
  • 보안 관리
    ex)외부의 칩입자로부터 자원을 안전하게 지킨다.

운영체제는 소프트웨어이다.

운영체제는 소프트웨어로서 프로그램이며 코드이다. 구성요소로 3가지가 있다.

  • 커널(kernel) : 관리 기능을 수행하는 핵심 코드
  • 도구(tool/utility) 프로그램 : 쉘, 탐색기, 작업관리자, UI
  • 디바이스 드라이버(device driver) : 장치를 직접 제어

1.2 운영체제의 목적과 기능

운영체제의 목적은 크게 2가지로 말할 수 있다

  • 사용자의 컴퓨터 사용 편리성 : 사용자가 하드웨어에 대한 사전 지식이 없어도 사용할 수 있다.
  • 자원의 효율적 사용과 관리

운영체제의 기능은 운영체제의 종류에 따라 다를 수 있는데 핵심 기능을 설명하자면

  • CPU/프로세스 관리(process management)
    운영체제는 저장장치에 저장된 프로그램을 메모리에 적재하는데 이를 프로세스라고 한다.
    프로세스 실행, 종료, 스케줄링등 프로세스 관리 기능과 프로세스 간 통신과 동기화 기능을 제공한다

  • 메모리 관리
    각 프로세스를 메모리에 할당하고 반환하며 프로세스에 할당된 메모리를 다른 프로세스로부터 보호한다.
    또한 가상메모리기법을 수행한다.

  • 파일 시스템 관리
    각 파일이 저장된 위치, 날짜등 파일 정보를 관리하고 파일 시스템 정보를 관리하며 파일, 디렉토리를 생성, 관리한다. 운영체제는 파일이 기록된 위치를 아는 유일한 존재이므로, 파일의 읽기, 쓰기, 삭제등 모든 기능을 수행한다.

  • 장치 관리
    입출력 장치를 관리한다.

  • 네트워크 관리
    네트워크 장치를 관리하고 입출력을 실행한다.

  • 보안 관리
    외부의 공격으로 부터 시스템과 사용자 정보를 보호한다.

  • 기타 관리
    사용자 정보를 관리하고 통계자료를 수집 관리하며 시스템 내 오류를 발견하다. 부팅기능도 수행한다.


1.3 운영체제와 응용소프트웨어

운영체제응용 소프트웨어
목적컴퓨터의 하드웨어나 응용소프트웨어의 자원관리사용자들의 요구를 충족시킬 수 있도록
설계된 소프트웨어
기능프로세스, 메모리, 파일 시스템 입출력
장치등 자원 관리와 사용자 관리
소프트웨어를 만든 특정한 목적만 수행
개발 언어C/C++, 어셈블리어C/C++뿐 아니라 Java, Python, C# 등 다양한 언어
실행부팅 시 메모리에 적재되어 컴퓨터 종료 때까지 실행사용자 명령을 통해 실행, 종료
자원에 대한
접근 권한
모든 자원을 배타적 독점 사용자원을 사용하기 위해 반드시 운영체제에게 요청

참고자료 : 명품 운영체제
황기태 저 | 생능출판사

profile
안녕하세요

0개의 댓글