본문 바로가기

정보처리산업기사 필기 공부/응용SW기초기술활용

운영체제 핵심 기능 파악(운영SW기초기술활용)

 

 

운영체제 핵심 기능

운영체제는 중앙 처리 장치, 메모리, 스토리지, 주변 기기 등을 적절히 관리한다. 특히 주기억 장치와 메모리, 메모리와 스토리지 사이의 속도차로 인해 여러가지 관리 기법들이 개발되었다. 초기에는 메모리 용량에 제한이 많아 소프트웨어 개발 시 메모리 관리가 매우 중요했으나, 최근에 들어서는 운영체제에서 대부분 자동으로 관리해 주므로 사용이 편리해졌다. 또 개발 및 시스템 환경이 클라우드화 되면서 자원에 대한 관리 노력이 많이 줄었다.

 

1. 메모리관리

 메모리 안에는 다수의 프로그램들이 실행된다. 프로그램 실행 중 메모리가 꽉 차게 되면 시스템의 속도가 느려지고 때로는 시스템이 멈추는 현상이 발생한다. 따라서 프로그램의 실행이 종료될 때까지 메모리를 가용한 상태로 유지 및 관리하는 것을 메모리 관리라고 한다. 메모리에 있는 프로그램은 중앙 처리 장치인 CPU로 이동하여 처리된다. CPU는 Vitual or logical address를 , 메모리는 physical address를 사용하는데 이를 매핑하는 것은 MMU(Memory Management Unit)가 담당한다. 즉, CPU와 지속적으로 데이터를 송수신하는 상황에서 어떤 부분의 메모리가 현재 사용되는지, 어떤 순서로 메모리에 입출력 되어야 하는지, 메모리 공간이 필요할 경우 어떻게 확보 및 제거할지에 대한 종합적인 관리가 메모리 관리이다.

 

2. 프로세스관리

 프로그램은 파일 형태로 저장하여 관리되다가 실행을 시키면 동작을 하게 된다. 이때 실행중인 프로그램을 프로세스(Process)라고 한다. 프로세스관리 기법에는 '일시 중지 및 재실행', '동기화', '통신', '교착상태 처리', '프로세스 생성 삭제' 등이 있다. 윈도즈에서는 작업관리자의 프로세스 탭에서 다양한 프로세스를 조회할 수 있고 프로그램이 정상 동작하지 않을 때 프로그램 끝내기를 통해 프로세스를 중단시킬 수도 있다.

 

 

 

가상화, 클라우드

 

1. 가상화

 가상화는 물리적인 리소스들을 사용자에게 하나로 보이게 하거나, 반대로 하나의 물리적인 리소스를 여러 개로 보이게 하는 것을 의미한다. 대부분 서버는 용량의 20% 정도만 을 사용하는데, 가상화는 서버의 가동률을 60~70% 이상으로 올릴 수 있다. 가상화를 통해 사용자는 하나의 PC에 여러개의 운영체제(윈도즈, 유닉스/리눅스 등)를 설치하여 개발되는 프로그램을 다양한 환경에서 테스트할 수 있도록 하며, 서로 다른 운영체제에서만 구동되는 프로그램을 실행시키도록 지원하기도 한다. 가상화는 크게 플랫폼 가상화 리소스 가상화로 구분될 수 있다. 플랫폼 가상화는 하드웨어 플랫폼 위에서 실행되는 호스트 프로그램이 게스트 프로그램을 만들어 마치 독립된 환경을 만들어 낸 것처럼 보여 주는 것이다. 게스트 소프트웨어 위에서 사용자는 독립된 하드웨어에서 소프트웨어가 실행되는 것처럼 활용할 수 있다. 리소스 가상화는 메모리, 저장 장치, 네트워크 등을 결합하거나 나누는 것인데, 사용자는 가상화된 물리적 장치들이 어떤 위치에 있는지 모르는 경우가 많다.

 

2. 클라우드

 인터넷 기반에서 구동되는 컴퓨팅 기술을 의미한다. 클라우드 컴퓨팅을 이용하면 응용 프로그램을 필요에 따라 불러 사용하고, 데이터를 손쉽게 저장 및 추출할 수 있다. 태블릿, 휴대폰 등 사용 디바이스가 다양해지면서 클라우드 컴퓨팅은 중요도가 높아지고 있다. 클라우드 서비스는 Iaas, Paas, SaaS 등으로 구분된다.

 

- IaaS(Infrastructure as a Service) : 웹상에서 구글, 마이크로소프트, 아마존 등에서 제공하는 환경의 네트워크, 보안, 데이터 저장소, 콘텐츠 딜리버리 서비스를 포함한 다양한 인프라를 임대하여 이용할 수 있는 서비스

- Paas(Platform as a Service) : 운영체제가 이미 구성되어 있는 상태에서 사용자는 데이터와 애플리케이션만 직접 관리할 수 있는 서비스

-SaaS(Software as a Service) : 인프라와 운영체제뿐만 아니라 사용할 수 있는 소프트웨어까지 갖추어져 웹상의 로그인만으로 다양한 소프트웨어를 사용한 만큼 비용을 지불해가며 사용할 수 있는 서비스