본문 바로가기

IT 기술

운영체제의 이해

반응형

# 운영체제란 무엇일까요.

" 운영체제란 사용자가 컴퓨터 시스템을 손쉽게 사용하도록 하고, 시스템 자원(기억장치, 프로세서, 입출력 장치, 정보, 네트워크 등)을 효율적으로 관리할 수 있도록 하는 프로그램의 집합 " 
                                                                                           - William Stallings - 

# 운영체제의 기능
- 입출력 장치 관리
- 시스템 자원 관리
- 에러 검출과 조치

# 제어프로그램과 처리 프로그램
- 제어프로그램 : 시스템의 동작 상태를 지속적으로 모니터링하는 감시 프로그램(Supervisor), 전체 시스템 자원을 관리하는 마스터 스케줄러(master scheduler), 특정 프로세스에 대한 자원의 사용을 관리하는 작업 스케줄러(job scheduler)가 있습니다. 제어 프로그램은 시스템의 동작을 감시하고, 여러가지 프로그램이 올바르게 동작하도록 제어하며, 하드웨어를 구동하는 역할을 합니다.

- 처리 프로그램 : 고급 프로그래밍 언어로 작성된 프로그램을 컴퓨터가 이해할 수 있는 형태의 기계어로 바꿔주는 언어 번역 프로그램(language facility), 여러 프로그램이 공통으로 사용하는 일정 패턴을 수행할 수 있는 서비스 프로그램(service facility), 그리고 메모장이나 계산기와 같이 특정 기능을 위한 응용 프로그램(application program)이 있습니다. 처리프로그램은 제어 프로그램의 관리를 받으며 실제의 문제를 실행하고 해결합니다.

# 용어
- 모니터링 : CPU의 idle time을 효율적으로 사용하기 위해 CPU의 프로세스를 지속적으로 관찰하여 작업 순서를 자동으로 바꿉니다.
- 버퍼링 : CPU가 어떤 작업을 처리하는 동안, 버퍼에 다음에 처리할 작업을 미리 읽어 저장해 두는 것입니다.
- 스풀링: 속도가 빠른 디스크를 버퍼처럼 사용해서 미리 입출력 장치에서 읽는 것입니다.

# Process
- 윈도우
. csrss.exe(Client/Server Runtime SubSystem, Win32) : 윈도우의 콘솔을 관장하고 스레드를 생성/삭제하며, 32비트 가상 MS-DOS 모드를 지원합니다.

. explorer.exe : 작업 표시줄, 바탕 화면과 같은 사용자 셸을 지원합니다.

. lsass.exe(Local Security Authentication Server): winlogon 서비스(사용자의 log in/out을 담당)에 필요한 인증 프로세스를 담당합니다.

. mstask.exe(Window Task Scheduler): 시스템에 대한 백업이나 업데이트 등에 관련된 작업의 스케쥴러입니다.

. smss.exe(Session Manager SubSystem): 사용자 세션을 시작하는 기능을 담당합니다. 이 프로세스는 winlogon, Win32(csrss.exe)를 구동시키고, 시스템 변수를 설정합니다. 또한 winlogon이나 csrss가 끝나기를 기다려 정상적인 winlogon과 csrss 종료 시 시스템을 종료시킵니다.

. svchost.exe(Service Host Process): DLL(Dynamic Link Libraries)에 의해 실행되는 프로세스의 기본 프로세스입니다. 따라서 한 시스템에 여러 개의 svchost 프로세스가 있습니다.

. service.exe(Service Control Manager): 시스템 서비스들을 시작/정지시키고 그들 간의 상호작용 기능을 수행합니다.

. System Idle Process: 각 CPU마다 하나씩 실행되는 스레드로서 CPU의 잔여 프로세스 처리량을 %로 나타낸 값입니다.

. winmgnt.exe(Window Management Service): 장치들에 대한 관리 및 계정 관리 네트워크 등의 동작에 관련된 스크립트를 위한 프로세스입니다.

. msdtc.exe(Distributed Transaction Coordinator): 웹 서버 및 SQL 서버 구동 시에 다른 서버와의 연동을 위한 프로세스입니다.

. ctfmon.exe(Alternative User Input Services): 키보드, 음성, 손으로 적은 글 등 여러가지 텍스트 입력에 대한 처리를 할 수 있도록 지원하는 프로세스입니다.

. dfssvc.exe : 분산 파일 시스템에 대한 지원을 위해 백그라운드로 실행되고 있는 프로세스입니다.

- 리눅스
. ps 명령으로 현재 셸에서 실행중인 프로세서를 확인할 수 있습니다.

. 옵션 : -e(모든 프로세스 리스트를 출력), -f(프로세스 관련 모든 정보 출력), -p(지정된 프로세스에 대한 정보 출력), -t(지정된 터미널에 연관된 프로세스에 대한 정보 출력), -u(지정된 사용자에 연관된 프로세스에 대한 정보를 출력)

. top 명령으로도 확인 가능

. fg(foreground) , bg(background): 명령문+&

반응형

'IT 기술' 카테고리의 다른 글

컬러이론  (2) 2012.01.25
윈도우의 구조  (0) 2012.01.25
시스템 내의 특정파일들을 검색하여 삭제하는 방법  (0) 2012.01.25
특정 UID 소유의 모든 파일 찾기  (0) 2012.01.25
find 명령어 사용법  (0) 2012.01.18