1. 역할 구분
1) 응용 프로그램 (Application Program, 애플리케이션)
- 사용자 서비스를 위한 것이다.
- 문서 편집이나 자료관리 등 사용자의 목적에 맞게 특정한 작업을 수행하는 프로그램이다.
사용자 |
문서 파일 (ex. hello.doc, test.hwp) |
응용 프로그램 |
워드 프로세서 프로그램 |
운영체제 |
윈도우 운영체제 |
하드웨어 |
PC |
2) 시스템 소프트웨어 (System Software)
- 하드웨어를 효율적으로 다루기 위한 것이다.
- 하드웨어 구동과 관련되어 컴퓨터 시스템을 효율적으로 다루기 위한 프로그램들의 집합이다.
① 종류
˙ 로더 (Loader) : 프로그램을 메모리에 넣어 실행을 준비한다.
˙ 진단 (Diagnostic) : 하드웨어나 응용프로그램의 상태를 진단한다.
˙ 유틸리티 (Utility) : 디버거(Debuffer), I/O 프로그램 등
˙ 언어처리기 (Language Processor) : 번역 프로그램
˙ 라이브러리 (Library) : 표준 서브루틴 (Subroutine)
˙ 운영체제 (Operating System, OS) : 하드웨어나 소프트웨어를 관리 운영한다. 대표적인 시스템 소프트웨어다.
② 시스템 소프트웨어의 역할
3) 운영체제 (Operating System, OS)
- 컴퓨터를 운영하는 프로그램을 가상으로 표현한 말이다.
- 컴퓨터 사용자, 하드웨어, 소프트웨어 사이의 중재자로서 인터페이스를 제공한다.
- 시스템 자원의 효율이 전반적으로 최대가 되도록 하드웨어나 소프트웨어를 총괄한다.
- CPU에 일을 시키고 디스크에 자료를 저장하고 화면에 글자를 나타내는 등 기본적이며 필수적인 서비스와 명령을 받아들여 처리한다.
① 장치 드라이버
- 컴퓨터 시스템의 하드웨어나 주변장치를 구동시킬 때 운영체제가 요구하는 정보가 들어있는 소프트웨어 파일이다.
- 즉, 하드웨어를 구동시킬 때 필요한 파일이다.
② 커널과 시스템 호출
· 커널 (Kernel)
- 운영체제의 핵심부로 항상 주기억장치에 상주한다.
- 하드웨어와 소프트웨어 요소들 사이의 통신과 시스템 자원을 관리한다.
- 운영체제의 다른 부분에서 공통적으로 필요한 서비스를 제공한다.
- 운영체제가 기본적으로 해야 할 대부분의 작업들을 수행한다.
· 시스템 호출 (System Call)
- 커널에 운영체제의 서비스를 요청하는 절차다.
③ 쉘과 유틸리티
· 쉘 (Shell, 명령어 해석기, Command Interpreter)
- 사용자가 운영체제의 내부 커널을 인터페이스 한다.
- 까다로운 프로그램이나 운영체제의 사용 불편을 개선하기 위해 메뉴 구동형의 사용자 인터페이스를 제공하는 일종의 유틸리티 프로그램이다.
- 커널 사이트를 이용할 수 있도록 명령어 라인이나 그래픽 인터페이스를 통해 사용자의 명령을 처리한다.
- ex) 사용자가 HTML 코드를 몰라도 웹 페이지를 통해 메일을 보낼 수가 있다.
· 유틸리티 (Utility, 도구, 서비스 프로그램)
- 컴퓨터의 하드웨어, 운영체제, 응용 프로그램을 관리하고 조화시킬 목적으로 설계된 소프트웨어다.
'Computer Science > Computer architecture' 카테고리의 다른 글
6. 컴퓨터 언어 (0) | 2020.05.24 |
---|---|
5. 윈도우 운영체제 (0) | 2020.05.24 |
3. 메인보드 (0) | 2020.05.09 |
2. 하드웨어 구성요소 (0) | 2020.05.09 |
1. 컴퓨터 구성요소 (0) | 2020.05.09 |