박봉달의 개발생활

[리눅스마스터 1급:#3] 운영체제의 사례 본문

Qualification/리눅스 마스터 1급

[리눅스마스터 1급:#3] 운영체제의 사례

박봉달 2020. 12. 29. 02:13
728x90

안녕하세요

박봉달입니다!

오늘은 리눅스 마스터 1급 공부 둘째날의 기록을 남겨보도록 하겠습니다.

서적은 이기적 리눅스마스터 1급 이론서+기출문제를 기본으로 하고 있습니다.


1. 운영체제의 사례

▶ 데스크톱 및 서버 운영체제

1) 윈도우

- 1975년 빌게이츠와 폴 앨런이 설립한 마이크로소프트에서 제작한 그래픽 사용자 인터페이스 기반 개인용 컴퓨터 운영체제이다.

- 처음엔 RedStone 이라는 코드명 사용하였으며 현재는 Windows 10 이라는 이름으로 업데이트 되어있다.

- 그 모체는 NT커널을 탑재하며 기업용 OS 였던 Windows NT 3.1이다.

2) Mac OS

- 스티브 잡스와 스티브 우즈니악이 설립한 애플에서 개발한 유닉스/다윈 기반 Mac 기기 전용 운영체제이다

- 2016년 6월 Siera를 발표하면서 명칭이 MacOS로 변경되었다

- 데스크톱 환경에서 윈도우 다음으로 점유율이 높다.

3) 리눅스(Linux)

- 핀란드의 리누스 토발즈는 유닉스에 호환되는 운영체제를 개발하였고, 일반인에겐 공개하지 않았다.

- 1991년 리눅스 커널의 첫 정식 버전이 뉴스그룹에 발표되면서 역사가 시작되었다

- 리눅스 커널은 수많은 개발자들이 공동으로 개발하는 공개 프로젝트 형식으로 진행되었다

- 데스크톱 용 리눅스엔 우분투, CentOS 등이 있다.

4) 유닉스(UNIX)

- 1969년 미국의 AT&T 사의 벨 연구소의 켄 톰슨 및 데니스 리치에 의해 개발된 교육 및 연구개발용 범용 다중 사용자 방식 시분할 운영체제이다.

- 상당수 C언어로 개발되어있어 새로운 플랫폼에 이식하기가 용이하고 명령행 인터프리터, 계층적 파일시스템, 장치와 프로세스간 통신을 파일을 매개체로 수행하는 특징이 있다.

- System V계열과 BSD 계열이 있다.

 

 

▶ 모바일 및 임베디드 운영체제

1) 안드로이드

- 구글에서 인수 후 안드로이드 플랫폼을 휴대용 장치 운영체제로서 무료 공개하였다

- 리눅스 커널과 네이티브 환경에서 구동하는 C/C++ 라이브러리와 안드로이드 런타임을 기반으로 동작하는 어필리케이션 프레임워크와 앱으로 구성된다

- 미들웨어, 사용자 인터페이스, 웹 브라우저, 이메일 클라이언트, 메시지 등의 표준 응용 프로그램을 포함하고있는 일종의 소프트웨어 스택이기도 하다

- 기존의 가상머신인 달빅을 채용하지 않고 안드로이드 런타임이라는 새로운 가상머신을 제공하며, 이를 기반으로 자바와 코틀린으로 개발된 앱을 별도의 프르세서에서 실행하는 구조로 되어있다.

2) iOS, watchOS, iPadOS, tvOS

- 애플이 제작한 제품을 구동하기위한 운영체제이다.

- 애플워치를 위한 watchOS,, 아이패드를 위한 iPadOS,, 애플tv를 위한 tvOS

3) 타이젠

- 인텔과 삼성의 주도로 리눅스 재단, MeeGo 개발자가 합류하여 개발한 리눅스 기반 오픈소스 모바일, 웨어러블 운영체제이다.

- 안드로이드를 견제하기 위한 목적으로 개발을 시작하고 탑재를 시도하였으나 사실상 중단되었다.

4) 임베디드 리눅스(Embedded Linux)

- 라즈비안은 영국의 라즈베리파이 재단에서 만든 초소형/초저가 오픈소스 하드웨어로서 라즈베리파이용 데비안 리눅스 기반 운영체제이다

- webOS는 Palm에서 시작하여 LG전자에서 개발중인 모바일 및 스마트TV, IoT용 운영체제이다.

- IVI(In-Vehicle Information)에는 MS의 Windows Embedded Automotive, QNX, GENIVI, Android Auto, Apple Carplay와 같은 다양한 IVI용 OS 들이 존재한다

 

▶ IoT 운영체제

1) Linux

- Android Things : 2016년 공개된 안드로이드 기반 사물 인터넷 플랫폼이다.

- Ubuntu Core : IoT를 위해 보안성을 강화하고 가볍고 안정적으로 동작하도록 최적화했다

2) Windows IoT

- 기존의 윈도우 임베디드 운영체제를 IoT에 맞게 최적화한 운영체제이다

- 엔터프라이즈, 모바일 엔터프라이즈, IoT 모바일, 코어 에디션으로 나눈다

3) RTOS

- FreeRTOS : 소형 저출력 엣지 디바이스를 쉽게 프로그래밍, 배포, 보안, 연결 및 관리할 수 있는 마이크로컨트롤러용 오픈소스 운영체제

- VxWorks : 미국의 윈드리버 시스템 사가 만들어 판매하는 실시간 운영체제

- QNX : 임베디드 시장에서 주로 사용하며 유닉스 기반 실시간 상업용 운영체제

4) 경량 OS

- Contiki : 한정된 메모리, 저전력, 무선통신, IoT 디바이스에 초점을 둔 BSD(Berkeley Software Distribution) 라이선스를 갖는 오픈소스 네트워크 운영체제이다. Contiki는 스마트도시의 여러 시설에 적용되고 있다.

- TinyOS : 가장 큰 센서 네트워크 커뮤니티를 갖는 UC버클리에서 개발한 센서 네트워크 용 무료 운영체제

- RIOT : IoT를 겨냥한 실시간 운영체제, 리눅스가 접근하기 어려운 8, 16, 32bit 플랫폼을 타겟으로 한다.

운영체제

최소 RAM

최소 ROM

C언어 지원

C++ 지원

멀티쓰레드

모듈

실시간

Contiki

<2kb

<30kb

일부 지원

미지원

일부 지원

일부 지원

일부 지원

Tiny OS

<1kb

<4kb

미지원

미지원

일부 지원

미지원

미지원

Linux

~1MB

~1MB

지원

지원

지원

일부 지원

일부 지원

RIOT

~1.5kb

~5kb

지원

지원

지원

지원

지원

 


오늘은 다양한 운영체제의 특징에 대해 알아보았습니다.

리눅스 마스터 1급 공부 둘째날의 포스트를 이것으로 마치고,

내일 다시 돌아오도록 하겠습니다!

읽어주셔서 감사합니다!

좋은 정보 가지고 계신 분이 계시다면

댓글 부탁드려요 :)

728x90
반응형