티스토리 뷰
운영체제의 개요
운영체제(OS : Operating System)
: 하드웨어와 컴퓨터 사용자 간의 매개체 역할
: 다리 역할을 하는 커널(Kernel) 의미
: 커널, 미들웨어(Middle Ware), 응용프로그램 실행환경
운영체제의 이해
운영체제의 주요 역할
① 컴퓨터의 하드웨어를 제어한다.
② 작업의 순서를 정하며, 입출력 연산을 제어한다.
③ 프로그램의 실행을 제어하며, 데이터와 파일의 저장을 관리한다.
④ 사용자들 간의 하드웨어 자원을 공유할 수 있도록 한다.
⑤ 시스템 자원을 스케줄링하여 효율적으로 활용할 수 있게 한다.
⑥ 입출력을 쉽게 하는 기능을 제공한다.
⑦ 응용 프로그램의 작성과 실행을 편리하게 한다.
⑧ 오류의 발생을 막고 복구를 지원한다.
⑨ 데이터의 조직화, 네트워크 통신 처리 기능을 수행한다.
⑩ 편리한 사용자 인터페이스를 제공한다.
최근 운영체제의 주요 특징
① 다중 사용자 시스템(Multi-User System)
② 다중 작업 시스템(Multi-Tasking System)
③ 강력한 네트워크 지원
④ 편리한 사용자 인터페이스 제공
⑤ 계층적 파일 시스템 운영
⑥ 가상 메모리 지원
⑦ 고성능의 프로세서에 최적화
⑧ 개방형 운영체제화
⑨ 뛰어난 이식성 지원
⑩ 가상화 기술 지원
운영체제의 역사
세대 |
처리방식 |
주요 내용 |
1940년대 |
초기 전자식 디지털 컴퓨터 |
· 운영체제 없음 · 단순한 기계적인 스위치에 의존 |
1950년대 |
단순순차처리 |
· 한번에 오직 하나의 작업만 수행 · 단일 흐름 일괄 처리 |
1960년대 |
다중 프로그래밍 |
· 멀티프로그래밍, 멀티프로세싱 개념 대두 · 시분할 처리 개념 대두 · 데이터 통신 지원 |
1970년대 |
다중 모드 시분할 |
· 일괄처리, 시분할 및 실시간 처리의 보편화 · 범용 시스템 개념 도입 |
1980년대 |
분산네트워크 |
· 각종 응용 프로그램 개발 · 데이터베이스 활용 확대 · 네트워크 기반으로 한 서버/클라이언트 모델 확대 · 운영체제 기능들이 하드웨어에 포함된 펌웨어(Firmware) 개념 대두 |
1990년대 |
병렬계산과 분산계산 |
· 중앙집중식이 아닌 분산으로 발전 · PC용과 서버용 운영체제 보편화 |
2000년대 ~ 현재 |
모바일 및 임베디드 |
· 네트워크 기반의 분산 및 병렬 운영체제의 보편화 · 스마트폰, 태블릿 등의 모바일 장치와 가전제품을 위한 모바일 및 임베디드 운영체제의 보편화 · 다양한 기능, 확장성과 호환성 극대화 · 다양한 통신망의 확대와 개방형 시스템 발달 |
운영체제의 종류
1. 유닉스(UNIX)
1969년 미국의 AT&T사의 벨(Bell) 연구소에서 근무하던 켄 톰슨(Ken Tompson) 및 데니스 리치(Dennis Ritchie)에 의해 만들어 졌다.
대표적인 것으로는 System V계열과 BSD계열이 있다.
System V 계열은 주로 상업적인 목적을 가진 업체들인 IBM, HP(Hewlett-Packard), Sun Microsystem, SGI 등이 있다.
BSD 계열에는 NetBSD, Free BSD, OpenBSD, SunOS, NextStep, Mac OS X, GNU/Linux 등이 있다.
유닉스의 특징으로는 다중 사용자(Multi-User) 및 다중 작업(Multi-Tasking) 지원, 강력한 네트워크 지원, 뛰어난 이식성 및 확장성, 계층적 파일구조, 가상 메모리 및 공유 라이브러리 지원 등이 있다.
2. 윈도우(Windows)
1975년 빌 게이츠(Bill Gates)와 폴 앨런(Paul Allen)이 설립한 마이크로소프트(Microsoft, MS)사는 베이직(Basic) 프로그래밍 관련 개발 회사로 시작하였다.
1980년 IBM의 프로그래밍 언어 관련 제품을 개발하던 중에 추가로 운영체제 개발 의뢰를 받으면서 운영체제 개발에 착수하게 된다.
1981년 시애틀 컴퓨터 시스템사로부터 86-DOS(Disk Operation System)를 사들여서 IBM용 PC 호환기종용으로 출시를 시작으로 1994년 MS-DOS 6.2 버전까지 출시한다.
1995년 본격적인 GUI 기반의 운영체제 시작인 Windows 95에도 7.0 버전으로 내장되었고 Windows 98을 거쳐 Windows ME에도 8.0 버전으로 내장되었지만, Windows NT 기반으로 만들어진 Windows XP 부터는 자취를 감취게 된다.
DOS는 키보드로 문자를 일일이 입력하여 작업을 수행하는 명령어를 직접 입력하는 방식(CLI : Command Line Interface)이었기 때문에 일반적인 사용자의 접근이 쉽지 않았다. 이에 마이크로소프트는 키보드 대신에 마우스로 아이콘(Icon) 및 메뉴 등을 클릭하여 작업을 수행 하고 멀티태스킹을 지원하는 그래픽 사용자 인터페이스(GUI : Graphic User Interface) 기반의 운영체제 개발에 착수한다.
윈도우 NT 커널 기반의 '윈도우 XP' 이후에 'Windows Vista', 'Windows 7', 'Windows 8', 'Windows 10'이 등장했다.
3. Mac OS X
1960년대까지의 컴퓨터는 연구소, 공공기관, 정부기관, 대기업, 대학교 등에서만 사용하는 특수한 기계로 인식되어졌지만,
1970년대 들어서면서 일반 대중들에게까지 파고들기 시작했다.
1974년 대학을 중퇴하고 컴퓨터 게임 회사인 아타리(ATARI)사에 근무하던 스티브 잡스(Steve Jobs)와 대형 컴퓨터 업체에서 근무하던 스티브 워즈니악(Steve Wozniak)은 직접 컴퓨터를 만들 계획을 세우고 1976년 '애플 I(Apple I)'을 출시하게 된다.
1977년 '애플 컴퓨터'라는 정식 법인을 설립하고, '애플 II'를 출시하면서 상업적으로 대성공을 거두게 된다.
1981년 개인용 컴퓨터(Personal Computer, PC) 시장에 회의적인 반응을 보이던 세계 최대의 컴퓨터 업체인 IBM은 애플의 성공에 자극을 받아 'IBM PC'를 출시하게 된다.
1983년 개인용 컴퓨터 중에서 최초로 GUI 방식의 운영체제가 탑재된 '애플 리사'가 출시된다.
1998년 '아이맥 G3'를 출시하고, 2000년 새로운 운영체제인 'Mac OS X'를 출시하게 된다.
2001년 아이팟(iPod) 출시, 2003년 온라인 음악 상점 '아이튠즈 스토어', 2007년 스마트폰 '아이폰 출시', 2010년 태블릿 컴퓨터 '아이패드 출시'하면서 세계 IT 문화를 선도하는 기업으로 자리잡고 있다.
4. 모바일 운영체제
모바일 운영체제(Mobile Operating System)란 모바일 환경을 고려하여 설계된 모바일 장치나 정보기기에 탑재되는 운영체제를 말한다.
기본적으로는 데스크톱 컴퓨터나 노트북에 설치되는 윈도우, 맥, 리눅스와 같은 운영체제와 비슷하나 모바일 장치 및 환경적 특성에 적합하도록 설계되어 있다. 특히 배터리(Battery) 사용, PC(Personal Computer)에 비해 상대적으로 낮은 사양, 무선 기반으로 광대역 및 지역 연결, 다양한 멀티미디어 지원 등의 환경적 특성은 휴대폰, 개인 정보 단말기(PDA : Personal Digital Assistant), 태블릿(Tablet) 뿐만 아니라, TV나 자동차 영역까지 확대되고 있다.
현재의 모바일 운영체제는 넓은 의미의 운영체제로 커널과 하드웨어 드라이버, 미들웨어, 응용 프로그램 실행 환경, 사용자 인터페이스 프레임워크를 제공하고, 더 나아가 특정 운영체제에서만 제공하는 검색엔진, 클라우드 서비스 등을 포함하면서 차별화를 시도하고 있다.
리눅스 기반 모바일 운영체제
1. 구글의 안드로이드(Android)
안드로이드는 휴대 전화를 비롯한 모바일 기기를 위한 운영체제, 미들웨어, 사용자 인터페이스, 응용 프로그램을 포함하고 있는 소프트웨어 스택이자 모바일 운영체제이다. 리눅스 커널 위에서 동작하며 다양한 안드로이드 시스템 구성 요소에 사용되는 C/C++ 라이브러리를 포함 하고 있다. 안드로이드는 자바 개발자들이 자바 언어로 응용 프로그램을 작성할 수 있게 하였으며, 기존의 자바 가상 머신과는 다른 가상머신인 달빅(Dalvik) 가상 머신을 통해 자바로 작성된 응용 프로그램을 별도의 프로세스로 실행하는 구조로 되어 있다.
2. 바다(Bada) OS
2009년 10월, 삼성전자는 멘토 그래픽스사의 Nucleus RTOS를 기반으로 바다(Bada) 플랫폼을 발표하였다.
중저가 스마트폰 시장을 주요 타겟으로 하여 피쳐폰의 스마트폰화를 주도하여쓰나 적은 앱이 가장 큰 약점으로 지적되고 있다.
현재 바다는 미고(MeeGo)와 리모(LiMo)가 통합된 타이젠(Tizen)과 통합할 예정이다.
3. 마에모(Maemo)
2005년 11월에 노키아가 스마트폰 및 인터넷 태블릿용으로 만든 리눅스 기반 소프트웨어 플랫폼이다.
2010년 2월경 마에모 프로젝트는 인텔의 모빌린과 합병하여 미고(MeeGo)라는 프로젝트로 변경되었다.
4. 모블린(Moblin)
모바일 리눅스(Mobile Linux)의 약어로 MID(Mobile Internet Device), 넷북 등 임베디드 모바일 기기를 위해 2007년 7월에 인텔과 리눅스 재단이 리눅스 기반으로 개발한 오픈 소스 운영체제이다.
2010년 2월에 인텔은 모블린 프로젝트를 노키아의 마에모와 합병하고 미고(MeeGo)라는 새로운 프로젝트를 진행하기로 결정하였다.
5. 미고(MeeGo)
2010년 2월에 인텔의 모블린과 노키아의 마에모가 합병하여 만든 모바일 운영체제 프로젝트로 넷북 및 모바일용 등 2가지 버전이 있으며 리눅스 재단이 주관하고 있다.
2011년에 노키아가 윈도우폰을 주력하겠다고 선언하고, 인텔도 삼성과 협력하여 타이젠(Tizen)을 개발하겠다고 선언하면서 주요 기업이 빠졌으나 프로젝트는 계속적으로 운영(Mer 프로젝트)이다.
6. 리모(LiMo)
Linux Mobile의 약자로 2007년 1월에 삼성전자, NEC, 파나소닉, 보다폰 등이 참여하여 시작한 프로젝트이다.
2011년 9월에 프로젝트를 종료하여 MeeGo로 대체되었고, 2012년에 인텔과 삼성전자의 주축으로 리모 재단, MeeGo 개발자 등과 협력하여 HTML 5와 웹 표준에 기반한 Tizen프로젝트를 시작하였다.
7. 타이젠(Tizen)
인텔과 삼성을 주축으로 리눅스 재단, MeeGo 개발자 등이 합류하여 만든 리눅스 기반의 무료 공개형 모바일 운영체제이다.
2012년 1월 SDK 발표하였고, 2012년 4월 "Lakspur" 라는 코드명으로 Version 1.0을 발표하였다.
웹 표준과 HTML 5를 지원하며 태블릿, 넷북, 스마트폰, 스마트 TV, IVI(In-Vehicle Infotainment) 지원이 목표이다.
'리눅스 마스터 1급' 카테고리의 다른 글
리눅스의 특징 (0) | 2016.08.26 |
---|---|
리눅스 마스터 1급 시험 안내 (0) | 2016.08.20 |