저번 글에서는 1960년대부터 발전된 과정들을 살펴보았다. 1970년대 이전에 개발된 것과 그 후 개발된 것을 비교하여 어떤 점이 변하였는지 살펴보자.
1970년대 초반 다중 모드 및 범용 시스템
이 시기는 1964년 IBM 시스템/360 계열 컴퓨터부터 시작됐다. 사용자 모두에게 모든 기능을 제공할 수 있도록 범용 시스템으로 설계했다. 결함이 발생하면 고치는 데 시간이 오래 걸렸으며, 시스템 유지 비용이 늘어나는 등 문제가 있었다. 일괄 처리, 시분할 처리, 실시간 처리, 다중 처리를 모두 제공하는 다중 모드 시스템도 나타났다. 하지만 해당 기능이 필요 없는 사용자에게도 똑같이 모든 기능을 제공하여 수행 시간의 과부하가 생겨났고, 시스템을 이해하려면 고도의 훈련이 필수였다.
상당히 고가이자 이런 기종은 처음으로 도전한 것이라 계획했던 시간과 예산을 훨씬 초과해서 완성했다. 컴퓨터가 더욱 복잡해져 사용자가 숙련될 때까지 시간이 오래 걸려서 이용하는 데 고도의 훈련이 필요했다.
1970년대 중반 ~ 1990년대 분산 처리 시스템, 병렬 계산과 분산 계산
온라인 처리 방법과 컴퓨터 네트워크를 널리 이용했다. 사용자가 지역적으로 거리가 먼 여러 시스템과 연락이 가능해 정보 보호가 중요한 관심사가 되었다. 네트워크를 사용하여 멀리 떨어진 컴퓨터를 이용할 수 있고, 마이크로프로세서가 나타나서 개인용 컴퓨터를 보유할 수 있게 되었다. 그리고 1970년대 명령어 중심의 시스템 이용법이 1980년대에는 사용자에게 간편한 메뉴 지향적인 시스템으로 바뀌게 되었고, 1990년대에는 GUI 시스템으로 발전했다.
분산 처리 개념으로 확립하여 컴퓨터가 있는 곳으로 데이터를 가져가 작업하기보다는 데이터가 생겨나는 곳으로 컴퓨터의 능력을 가져오는 데 관심을 가지게 되었다.
2000년대 이후 모바일 및 임베디드, 가상화 및 클라우드 컴퓨팅
21세기에 들어가며 개인의 생활 깊숙이 영향을 주는 변화 중 하나는 태블릿과 스마트폰 같은 모바일 기기이고, 이 중심에는 모바일 운영체제가 있다. 모바일 운영체제는 모바일장치나 정보 기기를 통제하는 운영체제이다. 각종 사물에 컴퓨터 칩과 통신 기능을 내장하여 인터넷에 연결하는 사물인터넷 기술이 나타났다. 초기에는 시스코 등 네트워크 회사가 나중에는 인텔, 퀄컴을 비롯한 반도체 칩 판매사가 사물인터넷을 열정적으로 전달하다가 이제는 애플이나 삼성전자 같은 제조사가 사물인터넷과 연관된 상품의 청사진과 플랫폼을 구상 중이다. 특히 구글이나 아마존 등은 인터넷과 클라우드 기반 플랫폼에서 유리한 상황을 바탕으로 사물인터넷 시장을 앞서나가기 위해 하루가 멀다 하고 다양한 관련 스킬과 서비스를 발표했다. 스마트폰용으로는 노키아의 심비안, 구글의 안드로이드, 애플의 iOS, RIM의 블랙베리 OS, 마이크로소프트의 윈도우 등이 대표적으로 알려져 있다.
이때는 1960년대 후반 나타난 가상화 기술이 본격적으로 전파되었다. 가상화는 물리적 자원을 추상화하여 논리적 자원 형태로 표현하는 기술이다. 가상화는 적용 대상에 따라 서버 가상화, 데스크톱 가상화, 스토리지 가상화, 네트워크 가상화, 소프트웨어 가상화로 구별이 가능한데, 이 중 운영체제와 연관된 가상화 핵심은 서버 가상화이다. 가상화 기술이 처음 나타났을 때는 도입 코스트가 비싸고 사용 환경이 제한적이라 많이 이용하지 않았다. 그러다 기술이 발달하여 경제성이 높아지면서 성능, 안정성, 효율성 업그레이드 등 강점으로 본격적으로 확산되었다. 가상화 중 서버 가상화는 물리적 서버 하나에 가상 서버를 여러 개 구성하는 수단이다. 서버 하나에서 각 응용 프로그램과 운영체제를 독립된 환경으로 이용할 수 있어 여러 운영체제가 한 시스템의 자원을 공유할 수 있다. 가상화 수단에 따라 호스트 운영체제에서 가상 머신을 작동하는 호스트 기반 가상화와 호스트 운영체제 설치 전에 가상화 솔루션을 넣어둬 가상의 CPU, 메모리, 디스크, 네트워크 카드 등을 만들어내는 베어 메탈 기반 가상화로 구분할 수 있다.
호스트 기반 가상화는 설치가 간단하고 구성이 간편하다는 장점이 있지만, 성능이 떨어질 수 있다는 단점이 있다. 그리고 베어 메탈 기반 가상화는 향상된 성능을 주고 실시간 운영체제를 보조할 수 있다는 장점이 있지만, 운영체제 위에 없기 때문에 하드웨어 플랫폼 드라이버와 디바이스용 드라이버 등을 함께해야 설치가 되고 구성이 까다로운 단점이 있다.
서버 가상화 기술을 사용하여 사용자에게 컴퓨팅 자원, 스토리지, 소프트웨어 등을 서비스 형태로 주는 클라우드 컴퓨팅이 나타났다. 그리드 컴퓨팅의 분산 컴퓨팅 개념, 유틸리티 컴퓨팅의 과금 모델, 서버 기반 컴퓨팅의 처리 모델을 적용하여 다음 세 가지 특징을 보인다.
- 클라우드 데이터 센터에서 희망하는 만큼 컴퓨터 자원을 제한 없이 이용할 수 있다.
- 컴퓨터 자원을 소비한 만큼 이용료를 지불한다.
- 컴퓨터 자원을 희망할 때 원하는 만큼 늘리거나 줄일 수 있다.
클라우드 컴퓨팅은 그리드 컴퓨팅, 유틸리티 컴퓨팅, 서버 기반 컴퓨팅의 특징을 조금씩 가져간 개념이다. 클라이드 컴퓨팅 기술을 이용한 서비스는 크게 IaaS, PaaS, SaaS로 구분이 가능하다.
IaaS는 데이터 센터에 있는 서버, 스토리지, 네트워크 등 자원이나 인프라를 가상화하여 인터넷에 줄 수 있다. 예시를 들면, 아마존의 EC2와 S3가 있다. EC2는 개인의 가상 인스턴스를 만들고 관리하며 수행하는 서비스이다. 그리고 S3는 데이터를 지니고 다니는 개인 스토리지 제공 서비스이다.
PaaS는 응용 프로그램의 구축, 테스트 및 설치가 가능한 총합 개발 환경을 웹으로 제공한다. 구글 앱 엔진은 웹 서비스를 개발, 구축, 관리, 배포할 수 있는 플랫폼을 제공하며 구글, 다음, 네이버에서 제공하는 Open API가 PaaS가 일종이다.
SaaS는 특정 소프트웨어를 인터넷으로 준다. 이런 소프트웨어를 온디맨드 소프트웨어라고도 하며, 소프트웨어와 연관된 데이터를 클라우드에서 관리하고, 사용자는 웹 브라우저로 접속하여 소프트웨어를 이용한다.
마무리 및 결론
1970년대 초반에는 다중 모드 및 범용 시스템이 등장했고, 1970년대 중반부터 1990년대에는 분산 처리 시스템, 병렬 계산, 분산 계산이 발전했다. 2000년대 이후에는 모바일 및 임베디드, 가상화, 클라우드 컴퓨팅이 주요 발전 방향이 되었다. 가상화는 물리적 자원을 추상화하여 논리적 자원 형태로 표현하는 기술로, 서버 가상화, 데스크톱 가상화 스토리지 가상화, 네트워크 가상화, 소프트웨어 가상화로 구분할 수 있다. 그리고 클라우드 컴퓨팅은 그리드 컴퓨팅, 유틸리티 컴퓨팅, 서버 기반 컴퓨팅의 특징을 조금씩 차용한 개념으로 IaaS, PaaS, SaaS로 구분이 가능하다.
'IT 및 프로그래밍' 카테고리의 다른 글
프로세스와 스레드 중 프로세스의 관리에 대하여 - 1 (0) | 2024.10.22 |
---|---|
프로세스와 스레드 중 프로세스의 상태 변화에 대해 (0) | 2024.10.21 |
프로세스와 스레드 중 프로세스의 개념에 대하여 (0) | 2024.10.21 |
운영체제의 서비스에 대해 (0) | 2024.10.20 |
운영체제의 발전 과정과 유형 중 발전 과정에 대하여 - 1 (0) | 2024.10.20 |
운영체제 개념과 발전 목적 (0) | 2024.10.17 |
운영체제 컴퓨터 시스템의 동작 (0) | 2024.10.17 |
운영체제 컴퓨터 시스템과 하드웨어의 구성에 대하여 (0) | 2024.10.17 |