컴퓨터 개론 - 운영체제의 개념과 발전
1. 운영체제의 목적과 발전
1) 운영체제의 시동
- 운영체제에 가장 중요한 것
- 스케줄링과 이를 효율적으로 운영하는 것을 강조
2) 소프트웨어의 개념
3) 소프트웨어의 계층
(1) 시스템 소프트웨어 (System Software)
- 하드웨어를 운영하고 관리, 운영하는 소프트웨어
(2) 미들 웨어 (Middleware)
- 서로 다른 통신 규약, 시스템구조, 운영체제, DB간에 다양한 서비스를 지원하는 소프트웨어
(3) 응용 소프트웨어 (Application Software)
- 어떤 일을 처리할 수 있도록 프로그램을 미리 만들어 놓은 소프트웨어
- 업무 처리 별로 별도의 SW가 있다.
4) 운영체제의 개념
- 컴퓨터 5대 장치 자원을 제어하여 명령을 처리하는 프로그램의 집합체로
공항에서 항공기의 관제탑 역할
- 사용자가 컴퓨터 전문지식이 없어도 컴퓨터 각종 자원을 효과적으로 사용할 수 있도록 지원
- 컴퓨터에 운영체제가 없으면 자동차에 엔진이 없고, 오케스트라의 지휘자가 없는 것과 동일
(1) 운영체제의 처리 과정
- 사용자가 문서 작성 응용 소프트웨어에 문서를 출력하도록 지시함.
- 워드 프로세싱 응용 소프트웨어는 ‘문서가 프린터에 보내져야 한다’고 운영 체제에 신호를 보냄
- 운영 체제는 그 문서를 프린터에 보냄
5) 운영체제의 발전
(1) 배치 처리 (Batch Processing)
- 처리할 프로그램을 원칙적으로 도착 순서에 따라 하나씩 실행 하는 것으로
일괄처리(데이터를 모아서 한꺼번에 일괄처리)라고도 부름
- FIFO (First-In First-Out) 선입 선출
- 처리할 프로그램이나 명령어를 작업 또는 잡(Job)
(1-1) 배치 프로세싱의 개념
(2) 상호대화식 처리 (Interactive Processing)
- 이용자와 컴퓨터 간에 상호대화 방식
- 모니터를 통해 프로그램의 실행 도중에 데이터를 제공하거나 프로그램을 제어, 경우에 따라서
중간 결과 확인
- 인터프리터
(3) 시분할 시스템(다중프로그래밍, 다중작업)
- 다중 프로그래밍 : 다수의 사용자가 여러개의 프로그램을 동시에 실행
- 다중작업(Multitasking) : 여러개의 서로 다른 프로그램이 동시에 실행
- ex) PC에서 음악을 들으면서 문서작업 작성
- CPU가 하나인 경우, CPU 시간을 분할(Time Slice)하여 순서대로 돌아가면서 실행하는 방식이
시분할(Time Sharing)기법
(4) 실시간 처리 (Real Time Processing)
- 컴퓨터로 하여금 정해진 짧은 시간(거의 실시간) 내에 작업을 완료(데이터 입력시 즉시 처리)
(5) 병렬처리와 다중처리
(5-1) 병렬처리
- Parallel Processing
- 하나의 프로그램A를 여러개의 작업{A1,A2,…,A6}로 분할하여 몇개의 CPU에 할당하여 빠른 실행 결과
(5-2) 다중처리
- Multiprocessing
- 여러개의 프로그램을 여러개이 CPU가 실행하여 전체적인 성능 향상
(6) 모바일 운영체제
- 컴퓨터에 비해 장치 규모가 작기 때문에 각 기기의 특수한 상황에 따라 기능을 주로 요구하므로
운영체제의 핵심 기능만 삽입
- 임베디드 장치에 필요한 시스템 소프트웨어를 임베디드 운영체제라고 하며,
고사양의 임베디드 운영체제로는 Windows CE와 임베디드 Linux
6) 운영체제의 역사
(1) 초창기의 운영체제
- 컴퓨터 시스템마다 자체 운영체제
- 예) IBM OS/360, CDC SCOPE
(2) 유닉스(Unix) 운영체제
- 1969년 AT&T사 벨 연구소의 토마스 리치등이 어셈블리어로 개발, 1971년 C언어로 다시 작성하여
운영체제 오픈
- UNIX 개발자들에게 무상으로 제공, 다양한 컴퓨터에서 구현
(3) 리눅스(Linux)
- UNIX 계열의 운영체제 중 대표적인 공개 소프트웨어
- 1991년 리눅스 토발즈가 개발
- 공개 소프트웨어 운동은 원래 MIT 리차드 스톨만 교수가 UNIX와 유사한 운영체제 GNU를
개발하면서 시작, ‘오픈 소스(Open Source)’용어 탄생
(4) 데스크탑 운영체제
- DOS, MS Windows, Mac OS, UNIX, Linux 등
- GUI방식 : 1984년 Mac OS, 1980년대 후반 MS Windows
(5) 운영체제의 주요 역할
- 펌웨어(Firmware) 형태의 시스템 소프트웨어로 GUI를 통해 사용자와 각 장치, 그리고
소프트웨어에게 명령을 내려 일을 처리
2. 플랫폼
- 기차를 타고 가려면 역에 가야 하는 것과 같이 어떤일을 하기 위해 필수적으로 거쳐야 하는
장소가 플랫폼임을 강조
1) 플랫폼의 개념
(1) 운영체제
- 필수적인 핵심 소프트웨어로 컴퓨터 하드웨어의 플랫폼 역할을 수행
- 플랫폼은 “기반”또는 “매개”의 개념
2) 플랫폼의 역할
(1) 기반형 플랫폼
- OS 플랫폼과 같이 하드웨어와 애플리케이션 사이에 존재
- API(Application Program Interface) 및 SDK(Software Development Kit)제공
- 기반형 플랫폼이 애플리케이션 생태계로 자리 잡고 나면 새로운 플랫폼이 끼어들기 어려움
(2) 매개형 플랫폼
- 판매자와 구매자가 서로 만날 수 있는 환경 제공
- 다수의 구매자와 다수의 판매자가 특정한 목적으로 함께 모이는 장터(커머스 플랫폼)
- 예) 아마존의 오픈 마켓(Open Market), 특정 상품 추천시스템 G마켓,11번가
(3) 복합형 플랫폼
- 매개형과 기반형 플랫폼의 복합 형태로 이용자간에 상호작용하고 특정 목적을 위해 정보를 교환하는
매개 역할
- 모바일 운영체제(안드로이드) 기반형으로 출발, 구글 플레이와 같은 앱 마켓을 통하여 개발자와
사용자 그리고 광고주가서로 만나는 장터제공
- 예) 소셜 미디어와 SNS 서비스(예: 페이스북), 매개형으로 발전(안드로이드),API지원으로 발전
댓글남기기