본문 바로가기
Computer Science/운영체제

[운영체제] 운영체제 개요

by Sky Titan 2020. 9. 14.
728x90

※출처 : TOPCIT 에센스

이미지를 클릭하면 사이트로 이동합니다.

운영체제

  • 제한된 컴퓨터 자원을 효율적으로 관리하여 사용자나 응용프로그램에게 컴퓨터 자원의 인터페이스를 제공하는 시스템 소프트웨어
  • 컴퓨터 자원 제어, 사용 정책 구현 → 사용자에게 스케줄링을 통해 자원 할당
  • 입출력 장치를 통해 데이터 교환, 예외사항이나 에러 출력

운영체제 사용 목적

1. 추상화

: 컴퓨터 하드웨어의 복잡성을 추상화 시켜 응용 프로그램에게 표준화된 API 제공

2. 가상화

: 여러 개의 응용 프로그램과 여러 명의 사용자가 컴퓨터 자원을 공유하고 가상의 단독 컴퓨터 하드웨어를 사용하도록 제공하는 가상화 기능 제공

3. 관리화

: 컴퓨터 자원의 제약사항에 만족시키면서 컴퓨터 자원의 성능을 최대화시켜 응용 프로그램에게 제공

운영체제의 주요 기능

1. 프로세스 관리

  • 사용자 프로세스와 시스템 프로세스의 생성과 폐기
  • 프로세스의 중지와 재수행
  • 프로세스 통신과 동기화를 위한 기법 제공
  • 교착 상태 방지를 위한 기법 제공

2. 주기억 장치 관리

  • 기억장치를 사용하고 있는 공간과 사용자를 추적 관리
  • 기억공간을 점유할 프로세스 결정
  • 기억공간을 할당, 회수

3. 파일 관리

  • 파일 생성, 폐기
  • 디렉토리 생성, 폐기
  • 파일, 디렉토리 관리를 위한 프리미티브 제공
  • 보조 기억장치에 있는 파일을 운영체제가 이용할 수 있도록 매핑
  • 비휘발성 저장 매체에 파일 저장

4. 입출력 시스템 관리

  • 입출력 장치 : 마우스, 키보드, 모니터, 프린터, 스피커 등

 

5. 보조 기억장치 관리

  • 비어 있는 공간 관리
  • 저장 장소 할당
  • 디스크 스케줄링

6. 네트워킹

7. 명령 해석기 시스템

  • 사용자에게 제공하는 인터페이스
  • MS-DOS 나 UNIX 쉘에서 사용자가 키보드로 명령문을 입력하면 운영체제의 기능 수행

주요 운영체제의 종류

구분

운영체제

설명

PC운영체제

윈도우(Windows)

-Microsoft 개발

-안정적이고 표준적인 GUI

-다수의 3rd Party 프로그램 지원

맥OS (Mac OS)

-Apple 개발

-자사 하드웨어에 최적화

모바일운영체제

안드로이드(Android)

-Google 개발

-개방성 높음

-APK 파일로 설치 가능

iOS

-Apple 개발

-보안성 높음

-앱스토어에서만 설치 가능

서버운영체제

유닉스(UNIX)

-AT&T 개발

-다중사용자 환경 지원

-상용제품 위주로 가격이 비싸며 서버개발사마다 전용 유닉스 운영체제를 개발하여 탑재

리눅스(Linux)

-다양한 오픈 소스가 존재하며, 소스코드 공개

-저비용으로 구축가능

-UNIX 호환

-종류 : RedHat, CentOS, Ubuntu, Fedora, Suse 등

윈도우서버(Windows Server)

-Microsoft 개발

-Windows 인터페이스로 PC와 동일한 UI/UX 제공

-지원되는 응용 프로그램이 다양함

728x90

'Computer Science > 운영체제' 카테고리의 다른 글

[운영체제] 프로세스 동기화  (0) 2020.09.14
[운영체제] Pthread 개요  (0) 2020.09.14
[운영체제] 인터럽트 (Interrupt)  (0) 2020.09.14
[운영체제] 스레드(Thread)  (0) 2020.09.14
[운영체제] 프로세스  (0) 2020.09.14

댓글