한 걸음씩..

운영 체제 구조[4] - 시스템 프로그램 (System Programs) 본문

잡다한 공부방

운영 체제 구조[4] - 시스템 프로그램 (System Programs)

반엘 2013. 7. 15. 10:58

시스템 프로그램 ( System Programs )


시스템 프로그램은 프로그램 개발과 실행을 위해 보다 편리한 환경을 제공한다.

1. 파일 관리 : 파일과 디렉토리를 생성, 삭제, 복사, rename, 인쇄, 덤프, 리스트, 그리고 일반적으로 조작한다.

2. 상태 정보 : 시스템에게 날짜, 시간, 사용 가능한 멤리와 디스크 공간의 양, 사용자 수 등의 상태 정보를 묻는다. 해당 정보는 단말기나 다른 출력장치 혹은 파일로 포맷되어 인쇄된다.

3. 파일 변경 : 디스크나 테이프에 저장된 파일의 내용을 생성하고, 변경하기 위해 다수의 text editor가 사용 가능하다.

4. 프로그래밍 언어 지원 : 프로그래밍 언어들에 대한 컴파일러, 어셈블러, 해석기가 OS와 함께 사용자에게 제공된다.

5. 프로그램 적재와 수행 : 일단 프로그램이 어셈블되거나 컴파일된 후, 그것이 수행되려면 반드시 메모리에 적재되어야 한다. 시스템은 절대로더(absolute loader), 재배치 가능 로더(relocatable loader), 링키지 에디터(linkage editor)와 중첩 로더(overlay loader) 등을 제공할 수 있다. 또한 고급어나 기계어를 위한 디버깅 시스템도 필요하다.

6. 통신 : 이들 프로그램은 프로세스, 사용자, 그리고 다른 컴퓨터 시스댐들 사이에 가상 접속을 이루기 위한 기법을 제공한다.  이들 프로그램은 사용자가 다른 사용자 화면으로 메시지를 전송 하거나, 웹 페이지 여기 저기를 읽거나, 전자 우편 메시지를 보내거나, 원거리에서 로그인 하거나, 한 기계에서 다른 기계로 파일을 전송할 수 있게 한다. 


운영 체제를 위한 가장 중요한 시스템 프로그램은 명령 해석기로, 그 것의 중요한 기능은 사용자가 지정한 명령을 가져와서 그것을 수행하는 것이다. 


파일을 조작하는 두가지 방법

1. 명령 해석기 자체가 명령을 실행할 코드를 갖고 있는 경우

2. 시스템 프로그램에 의해 대부분의 명령을 구현하는 경우


사용자가 보는 운영 체제의 관점은 실제의 시스템 호출에 의해서 보다는 시스템 프로그램에 의해 정의된다.