응용 소프트웨어
어떤 문제 해결을 해결하기 위해 사용자나 전문가에 의해 만들어진 프로그램이다.
멀티프로세싱
2개 이상의 프로세서를 이용하여 사용하는 시스템이다.
일괄처리
사용자들의 작업 요청을 일정한 분량이 될 때까지 모두 모아 두었다가 한꺼번에 처리하는 방식의 시스템이다.
운영체제의 개념과 목적
-
개념 : 컴퓨터 하드웨어와 컴퓨터 사용자 간의 매개체 역할을 하는 시스템 소프트웨어
-
역할
- 조정자 : 운영 요소 사용을 제어하면서 사용자와 응용프로그램 간에 통신할 수 있게 함, 즉 작업을 할 수 있는 환경만 제공함
- 자원 할당자나 관리자 : 각 응용 프로그램에 필요한 자원 할당, 자원 할당 방법을 결정
- 응용 프로그램과 입출력장치 제어자 : 다양한 입출력장치와 응용 프로그램 제어 즉, 컴퓨터 시스템의 부적절한 사용이나 오류를 방지하기 위해 사용자 프로그램의 실행을 제어
-
하드웨어 및 사용자, 응용 프로그램, 시스템 프로그램 사이에서 인터페이스를 제공
-
프로세서, 메모리, 입출력장치, 통신장치 등 컴퓨터 자원을 효과적으로 활용하려고 조정,관리함
-
메일 전송, 파일 시스템 검사, 서버 작업 등 높은 수준의 서비스를 처리하는 응용 프로그램을 제어
-
다양한 사용자에게서 컴퓨터 시스템을 보호하려고 입출력을 제어하며 데이터를 관리
-
운영체제의 목적
- 편리성
- 효율성
- 시스템 성능 향상
- 처리량 향상
- 지연 응답시간 단축
- 신뢰도 향상
- 사용 가능도 향상
- 제어 서비스 향상
운영체제의 종류
운영체제의 분류
- 동시 사용자 수에 따라
- Single-user system
- OS가 한 순간 한 사용자만이 시스템을 사용할 수 있도록 지원
- 시스템의 모든 자원들이 사용자에 귀속
- 주로 Micro-computer나 Personal computer에서 사용
- MS-DOS, Windows 95/98
- Multi-user system
- 동시에 여러 사용자들이 시스템을 사용할 수 있도록 지원
- 각종 시스템 자원(파일 등)들에 대한 소유 권한 관리 필요
- 기본적으로 Multi-tasking 기능 필요
- OS의 기능 및 구조가 복잡해짐
- Unix, VMS(Digital), MVS(IBM), VM(IBM), AOS/VS(DG)
- 작업 처리 방법에 따라
- Single-tasking system
- 시스템 내에 하나의 작업(프로그램, 프로세스)만 존재, 실행 가능
- 하나의 프로그램 실행을 마친뒤에 다른 프로그램의 실행을 시작
- Multi-tasking system
- 동시에 여러 작업의 수행을 지원
- 병행 수행으로 인한 문제점들의 관리 필요
- 사용 환경에 따라
- Batch processing(일괄처리 시스템)
- 사용자의 요청 작업들을 일정 시간 모아 두었다가 한꺼번에 처리하는 방식
- 작업을 실행하면 끝날 때까지 아무것도 못함
- 급여계산처리 등에 사용
- 장점 : 다량의 작업을 일괄적으로 모아서 처리하는 것으로 전송 속도가 빠른 자기테이프, 자기 디스크 등의 보조기억장치를 이용하여 CPU의 효율을 높힐 수 있음
- 단점
- 준비 작업들의 유형이 동일해야하고, 작업에 모든 유형의 입력 불가능
- 입출력장치가 프로세서보다 속도 느려 프로세서의 유휴 상태 발생
- 하나의 작업이 수행되면 그 작업이 시스템의 모든 자원을 독점하기 때문에 CPU 유휴시간을 갖음
- Time-sharing system(시분할 시스템)
- 여러 사용자에게 짧은 간격으로 프로세서 번갈아 할당해서 마치 자기 혼자 프로세서를 독점하고 있는 양 착각하게 하여 여러 사용자가 단일 컴퓨터 시스템을 동시에 사용 가능 하도록 하는 기술
- 다수의 사용자가 동시에 컴퓨터의 자원을 공유할 수 있는 기술
- 대화형 체제 가능
- 장점 : 여러 사람이 공동으로 CPU를 사용할 수 있음
- 단점 : 실행중인 프로세스 간 통신 및 I/O장치의 사용에 대한 제어 및 관리 능력이 필요
- Distributed processing system(분산 시스템)
- 하나의 대형 컴퓨터에서 수행하던 기능을 지역적으로 분산된 여러 개의 미니 컴퓨터에 분담시킨 후 통신망을 통하여 상호간에 교신, 처리하는 방식
- 이러한 자료 처리 시스템들이 상호 연결은 컴퓨터 네트워크에 의해 이루어짐
- 장점 : Low cost, High performance
- 단점 : 구축 어려움
- Real-time system(실시간시스템)
- 단말기나 제어 대상으로부터 처리를 요구하는 자료가 발생할 때마다 즉시 처리하여 그 결과를 구동기를 통해 출력하거나 요구에 대하여 응답하는 방식
- 온라인의 개념 도입
- 장점
- 자료가 발생한 지점에서 단말기를 통하여 직젖ㅂ 입출력 되기 때문에 사용자의 노력이 절감
- 처리 시간이 단축
- 단점 : 자료가 무작위하게 도착하므로 입출력 자료의 일시 저장 및 대기가 필요
운영체제의 발달 과정
- 1940년대 : 운영체제 없음(작업별 순차 처리)
- 1950년데 : 일괄 처리 시스템
- 1960년대 : 다중 프로그래밍, 시분할, 다중 처리, 실시간 시스템
- 1970 ~ 1990년대 : 분산 처리 시스템
- 2000년대 이후 : 모바일, 사물인터넷 운영체제
5.1 클라우드 컴퓨팅 : 사용자가 인터넷을 통해 컴퓨터 하드웨어와 소프트웨어를 원격으로 액세스하여 사용할 수 있는 수단
5.2 모바일 운영체제 : 모바일 장치나 정보 기기 제어 운영체제. 노키아(심비안), 구글(안드로이드), 애플(ios), RIM(블랙베리 OS), 마이크로소프트의 윈도우 등