호야의 블로그
운영체제
작년 운영체제에 대한 과제로 수행했던 자료입니다. 운영체제에 대한 기초를 잡으시는 분들은 가볍게 읽고 넘어가시면 좋을 것 같습니다.
17년도를 기준으로 작성된 자료이며 디테일한 부분은 생략된 점 참고해주시길 바라겠습니다.
<다양한 OS의 종류>
운영체제의 의미와 목적 (운영체제란 무엇이고 왜 사용하는가?)
사용자가 컴퓨터를 쉽게 이용할 수 있게 사용자 인터페이스 제공과 동시에 컴퓨터와 사용자 간의 중개 역할을 하는 시스템 소프트웨어입니다. 또한, 컴퓨터 시스템의 하드웨어를 관리도 할뿐더러 응용 소프트웨어를 실행할 수 있게 하드웨어의 추상화 플랫폼과 공통의 시스템 서비스를 제공합니다.
<운영체제의 자원관리>
운영체제의 목적으로는 사용자에게 프로그램을 쉽고, 효율적인 환경 제공과 동시에 시스템 하드웨어 및 소프트웨어 자원들을 다중 사용자들에게 효율적인 관리, 보호에 그 목적이 있습니다. 또한, 입출력 장치 등의 자원에 대하여 연산과 제어를 관리하기도 합니다.
운영체제의 사용 예시 (어떤 곳에서 운영체제를 사용하는가?)
가장 대표되는 운영체제인 유닉스를 이용한 OS 종류에 대해서 알아보았습니다. 유닉스 운영체제에는 버클리에서 개발한 BSD(Berkeley Software Distribution)계열이 있습니다. BSD 운영체제 코드의 라이선스는 소스 코드를 수정, 추가해도 공개할 의무가 없기에 여러 기업에서 운영체제를 배포하고 상업적으로 이용할 수 있게 만들어져있습니다. 이를 이용하여 여러 방면에서 사용자 환경에 맞는 운영체제를 만들 수 있게 되어 있습니다.
<BSD 운영체제의 인터페이스>
먼저 NET BSD는 네트워크상에서 사용을 목적으로 만들어졌습니다. 그 때문에 이식성이 매우 좋아 56종류의 플랫폼에서 실행할 수 있습니다. 두 번째로 NET BSD에서 파생된 오픈소스 운영체제인 OPEN BSD는 컴퓨터 보안에 특화되어 있습니다. 특히 네트워크에서 가장 중요한 게이트웨이의 방화벽에 널리 쓰입니다.
<NetBSD와 OpenBSD>
세 번째로 MacOS는 데스크톱에서 Windows 다음으로 많이 쓰이는 운영체제입니다. 초기에 GUI를 빠르게 적용하여 편리성을 주었고, 점차 보안, 안정성, 속도 등 나은 서비스를 제공합니다. 네 번째는 Apple사에서 생산하는 모바일 기기에 탑재되는 IOS입니다. MacOS를 기반으로 만들어졌고, 호환성과 보안성이 뛰어나며 직관적인 사용자 인터페이스를 가져 편리성을 갖췄습니다. 현재 모바일 운영체제 시장에서 50%의 시장 점유율을 보여주고 있고, 데스크톱의 대표 OS가 Windows라면 모바일의 대표 OS는 IOS라고 볼 수 있습니다.
<MacOS 인터페이스>
<IOS 인터페이스>
이 외에도 유닉스를 기반으로 파생된 OS는 썬 마이크로시스템즈에서 만든 Solaris 운영체제가 있고, 주로 기업의 서버나 워크스테이션용으로 사용되며 C와 C++로 개발되었습니다. 그리고 Solaris의 파생형 운영체제인 Smart OS는 특히 클라우드를 만들고 어플라이언스를 생성하는 일에 알맞습니다.
<Solaris와 SmartOS의 인터페이스>
이렇게 유닉스에서 파생된 대표적인 운영체제들을 찾아봤는데 이 외에도 리눅스를 기반으로 한 운영체제까지 포함하면 엄청난 양의 운영체제가 보급된 것을 알 수 있습니다. 이로써 기존에는 몰랐던 PC 외에도 다양한 장비나 모바일, 서버에서도 OS가 탑재된다는 것을 알 수 있었습니다.
운영체제가 없고 동일한 일을 처리하려고 한다면 어떻게 해야 하나?
시스템 하드웨어 및 소프트웨어를 관리하고, 쉽고 효율적인 사용자 인터페이스를 제공하는 운영체제가 없다고 생각해보았습니다. 그러한 상황에선 운영체제의 일을 개발자가 대신하여야 하는데 운영체제 대신에 하드웨어의 구조가 어떻게 생겼는지, 각 구조의 역할은 무엇이고, I/O는 어떻게 동작하는지 등을 이해하고 있어야 할 것입니다. 개발자 입장에서는 매번 시스템 기반적인 코딩을 하여 기기를 컨트롤해야 할 것입니다. 이는 매우 위험하며 비효율적인 과정이고, 사용자에게도 편리한 UI를 제공하지 못하며 안정성과 신뢰성이 떨어지게 됩니다.
개발자와 하드웨어사이에서 발판역할을 해주는 운영체제를 개발자에게서 빼앗아간다는 것은 사람과의 대화에서 언어를 빼앗아가는 것이며 언어의 부재로 쉬운 대화가 안 되고, 다른 방식으로 대화하려해도 그 과정이 쉽지 않을 것 입니다.
후기 및 정리
운영체제에 대해 간단히 연구했던 자료를 필요한 분들에게 공유하고자 글을 쓰게 되었습니다. 이제 운영체제에 대한 공부를 막 시작했거나, 개념을 다시 한 번 정리하고자 하시는 분들에게 도움이 됐을거라 생각합니다.
혹시 수정해야할 내용이나 실제와 다른 내용이 있을 경우 댓글 부탁드리겠습니다.
OS 4번째 글: 2018/10/26 - [IT/OS] - [OS] 운영체제 1차 정리
OS 3번째 글: 2018/10/24 - [IT/OS] - [OS] CPU 스케줄러
OS 2번째 글: 2018/10/24 - [IT/OS] - [OS] 진짜 간단히 정리한 프로세스 개념
OS 1번째 글: 2018/10/18 - [IT/OS] - [OS] 운영체제에 대해서
조금의 도움이 되셨다면 로그인 없이도 가능한 댓글과
왼쪽 아래 ♥공감 버튼을 꾹 눌러주세요!
'IT > OS' 카테고리의 다른 글
운영체제 3차 정리 - Memory Management (1) (0) | 2018.10.26 |
---|---|
운영체제 2차 정리 - 데드락(Deadlock) (0) | 2018.10.26 |
운영체제 1차 정리 - 스케줄링 (1) | 2018.10.26 |
운영체제 CPU 스케줄러 (0) | 2018.10.24 |
진짜 간단히 정리한 OS 프로세스 개념 (2) | 2018.10.24 |