의념과 운영체제
의념은 운영체제와 같다. 의념은 정신일도이자 우주에 일점을 찍는 일이기도 하다. 의념을 컴퓨터 운영체제에 비유하는 것은 컴퓨터의 원리를 자세하게 들여다보면 볼수록 의념이 하는 역할과 많은 면에서 쌍둥이처럼 닮아있기 때문이다. 더구나 운영체제에 대한 깊이로 들어가면 갈수록 이러한 의문은 더욱 명확하게 드러나기 때문이다.
의념인 운영체제를 살펴보면 매우 간단하다. 운영체제가 하는 일은 사용자와 하드웨어 간에 다리를 놓아주는 오작교 역할을 한다는 점이다. 겉으로 드러나는 것은 간단명료하다. 그렇지만 모든 일이 다 그렇듯이 세부적으로 파고 들어가면 그 깊이에 놀랄 수밖에 없다. 운영체제가 존재하는 이유는 하드웨어와 소프트웨어 간에 없어서는 안 되는 핵심적인 존재이기 때문이다. 하드웨어만 있어서도 안 되고 소프트웨어만 있어서도 안 되는 이유는 매우 간단하다. 그 자체로는 아무것도 할 수가 없기 때문이다. 그저 유무형의 사물에 불과하기 때문이다.
운영체제의 구성요소
1. 운영체제의 정의
운영체제는 한정된 컴퓨터시스템의 자원(resource)을 보다 효율적으로 사용할 수 있도록 하고 사용자들에게는 편의성을 제공하는 시스템 프로그램으로 사용자와 하드웨어 간의 인터페이스(interface) 기능을 담당한다. 인터페이스란 접촉면 또는 경계면을 뜻하며 접속기는 사물 간 또는 사물과 인간 간의 의사소통이 가능하도록 일시적 혹은 영속적인 접근을 목적으로 만들어진 물리적, 가상적 매개체(접점)를 의미한다.
2. 운영체제의 목적
사람이 컴퓨터시스템을 편리하게 사용하는 데 있다. 운영체제는 사용자 또는 응용 프로그램(문서작성 및 그래픽과 게임 등)과 컴퓨터하드웨어 사이에서 중간 역할을 담당하는 프로그램이다.
① 하드웨어를 효율적으로 사용하도록 성능 향상을 도모하는 역할을 한다.
② 하드웨어를 편리하게 사용할 수 있도록 User Interface(사용자 위주. 사람들이 컴퓨터와 상호 작용하는 시스템)를 제공한다.
③ 컴퓨터시스템의 성능요소
성능요소와 의미
처리율(throughput) : 일정 시간 내에 시스템이 처리하는 일의 양
응답시간(turnaround time) : 사용자가 자료를 입력하여 결과를 얻을 때까지 총 걸리는 시간
사용가능도(availability) : 컴퓨터시스템의 한정된 각종 자원의 즉시 사용 가능한 정도
신뢰도(reliability) : 컴퓨터시스템이 정확하게 동작하는가를 나타내는 정도
3. 운영체제의 구성
(1) 제어 프로그램(control program)
① 감시 프로그램(supervisor program)
처리 프로그램의 실행과정과 시스템 전체의 동작 상태를 감시한다.
② 작업 제어 프로그램(job control program)
하나의 작업을 처리하고 다른 작업으로 자동적으로 이행하기 위한 준비를 한다.
③ 데이터 관리 프로그램(data management program)
컴퓨터시스템에서 처리하는 각종 파일과 데이터를 처리할 수 있도록 관리하는 기능을 한다.
(2) 처리 프로그램(processing program)
① 언어번역 프로그램(language translator program)
고급언어로 작성한 프로그램을 기계어로 변환해 주는 프로그램으로 어셈블러, 컴파일러, 인터프리터 등이 있다.
② 서비스 프로그램(service program)
컴퓨터 메이커 측에서 제공해 주는 프로그램으로 연계편집 프로그램, 정렬/병합 프로그램, 유틸리티 프로그램 등이 있다.
③ 문제 프로그램(problem program)
사용자가 작성한 문제해결 프로그램으로 응용 프로그램이 있다.
4. 운영체제의 구성요소
운영체제는 프로세스 관리, 주기억장치 관리, 보조기억장치 관리, 입출력 관리, 파일 관리, 보호시스템, 네트워크 관리, 명령해석시스템 등으로 구성된다.
(1) 프로세스 관리
① 프로세스(process)는 실행 중인 프로그램을 말한다(동적 개념).
② 프로그램이 보조기억장치에 저장되어 있을 때 파일이 된다(정적 개념).
③ 프로세스의 기능 : 운영체제가 프로세스를 위해 수행하는 operation
・ 프로세스의 생성 및 소멸
・ 프로세스의 동기화
・ 프로세스의 일시중지 및 재실행
・ 프로세스 간의 통신
(2) 주기억장치 관리(메모리 관리)
① 메모리는 바이트 단위로 저장되며, 어드레스(주소)를 가짐
② 사용되고 있는 메모리의 현황 파악
③ 메모리 할당 및 반환
(3) 보조기억장치 관리
① 주메모리의 크기 및 휘발성 때문에 보조기억장치를 사용
② 디스크의 공간 관리(사용 현황 파악)
③ 디스크의 공간을 파일에게 할당 및 회수
④ 디스크 스케줄링 및 입출력 스케줄링
(4) 입출력 관리
① H/W에 대한 지식 없이 I/0(입출력) 시스템을 이용
② Buffer caching system
③ 입출력 기기들을 제어(device driver)
(5) 파일 관리
① 여러 파일들을 저장하기 위해 디스크 내부의 자료구조 정의
② 파일의 생성과 삭제
③ 디렉터리의 생성과 삭제
④ 디스크장치에 대한 파일의 변환
⑤ 파일의 백업 지원 및 보호
(6) 보호시스템
① 보호 : 시스템 내에서 실행 중인 프로그램들이 자원들을 액세스(access)하도록 보장한다.
② 허용된 Access / 불허된 Access를 식별하여 프로세스와 파일을 보호한다.
(7) 네트워크 관리
① 통신 네트워크 하드웨어 관리
② 원격지 간에 정보와 자원을 공유
(8) 명령해석 시스템
① 사용자가 요구하는 명령을 해석하여 시스템에 전달
② Dos의 Command.com, Unix shell, Windows의 GUI
운영체제의 종류
1. 일괄처리 시스템
일괄처리시스템(batch processing system)은 유사한 작업을 모아서 한꺼번에 한 작업씩 순서대로 처리하는 시스템으로 처리방식은 간단하지만 모아진 작업이 모두 끝난 후에 결과가 나오기 때문에 응답시간이 많이 필요하다.
2. 실시간 시스템
실시간 시스템(real-time system)은 사용자와 컴퓨터시스템 간의 온라인 통신을 제공하여 사용자가 운용체제나 프로그램에 직접 명령을 주고 즉시 응답을 받을 수 있는 시스템이다. 은행입출금 시스템, 좌석예약 시스템, 우주선비행 시스템, 미사일 제어, 증권거래관리 시스템 등에 사용된다.
3. 시분할 시스템
시분할 시스템(time-sharing system)은 CPU 시간을 각 사용자에게 균등하게 할당하여 사용하는 체제로서 CPU의 일정시간(time slice)을 할당하여 주어진 시간 동안 직접 컴퓨터와 대화하는 대화형 방식으로 프로그램을 실행할 수 있도록 하는 형태이다. 시분할 시스템의 목적은 각 사용자들이 자신만의 컴퓨터시스템을 독점하여 사용하는 것 같은 느낌을 같게 한다.
4. 다중 프로그래밍 시스템(여러 개의 P/G)
다중 프로그래밍 시스템(multiprogramming system)은 CPU의 효율을 극대화하기 위한 방법으로 여러 개의 프로그램이 동시에 실행되는 것처럼 처리하는 방식이다. 실행되고 있는 한 프로그램이 CPU를 사용하다가 입출력장치 등 CPU를 필요로 하지 않는 동안 다른 프로그램이 그 시간에 CPU를 사용하여 CPU의 효율을 극대화하는 시스템이다.
5. 다중처리 시스템(여러 개의 CPU)
다중처리 시스템(multiprocessing system)은 동시에 프로그램을 수행할 수 있는 CPU를 여러 개 두고 각각 분담하여 처리하는 방식이다. 다중처리 시스템을 사용하는 목적은 신뢰성과 컴퓨터의 능력을 증대시키는 데 있다. 한쪽의 CPU가 고장 나더라도 다른 CPU를 사용하여 업무처리를 계속할 수 있기 때문에 시스템의 안정성이 높다.
6. 분산처리 시스템
분산처리 시스템(distributed processing system)은 사용자들이 네트워크를 의식하지 않고도 여러 지역의 자원과 정보를 공유하여 자신의 시스템 내부 자원처럼 편리하게 사용할 수 있는 시스템으로 하나의 대형 컴퓨터에서 수행하던 기능을 지역적으로 분산된 여러 개의 단말기에 나눈 후 통신회선을 통해 상호 간에 교신・처리하는 방식을 말한다.
7. 결함허용 시스템
결함허용 시스템(fault-tolerant system)은 시스템의 일부가 고장 나더라도 전체 시스템은 계속 가동할 수 있는 시스템으로 가동률을 높이는 시스템이다.
간단하게 운영체제의 윤곽에 대해 살펴보았지만 세부적으로 들어가면 더욱 복잡한 형태를 띠게 된다. 중요한 것은 OS인 운영체제를 기준으로 하드웨어(H/W)와 소프트웨어(S/W)의 연결을 긴밀하게 해주고 있다는 점이다. 마치 생명을 불어넣어주는 역할을 하고 있는 것이 바로 운영체제이기 때문이다.
여기서 시사하는 바가 매우 크다고 본다. 의념은 운영체제와 같기 때문에 운영체제에 대한 깊이 있는 이해가 선결되어진다면 의념의 다양한 연결고리를 찾아낼 수 있는 실마리를 제공할 뿐 아니라 의념에 대해 무한한 확대해석이 가능해져 그 뿌리부터 시작하여 줄기와 정점에 이르기까지 모두를 아우르고 있음을 확인할 수 있다는 점이다. 그리고 의념에 대한 이해의 폭을 넓히기 위해서는 운영체제의 깊이를 알아야한다는 점을 강조하고 있기도 하다.
물론 운영체제가 전부는 아니다. 운영체제와 연결된 하드웨어와 소프트웨어를 연결하면 그 끝은 무한하게 확대해나갈 수 있다는 점이다. 거기에다 양자컴퓨터까지 등장한다면 그 복잡함은 더욱 가중되어질 수밖에 없다. 겉으로 드러나는 것은 간단명료하지만 그 속은 도널드 노먼(Donald Norman)의 『보이지 않는 컴퓨터』에서 강조하고 있는 것처럼 점점 더 쓰기 쉬운 컴퓨터가 나온다고 하지만, 새로운 컴퓨터 역시 복잡하고 이해하기 힘들어 '도움말(FAQ)'의 도움이 없다면 온전히 사용하기 힘들다며, 기술에 사람이 맞춰야 하는 패러다임을 넘어서 "인간 중심, 사용자 중심의 인간적 기술"을 실현해야 한다고 주장하고 있는 것처럼 가장 이상적인 시스템은 "그 기술이 깊숙이 감추어져 있어 사용자들이 그것이 있는지조차 인식할 수 없는 상태"가 되어야한다는 점이다.
이러한 논리는 기의 퇴적층을 이루는 과정 속에서도 적용되어진다고 볼 수 있다. 실제로는 위의 논리적 이론에 따라 접근하는 것이 아니라 어쩌면 간단한 이론 몇 가지로 접근하는지도 모르기 때문이다. 쉽게 말하면 컴퓨터의 중심이론은 간단하다. 뇌에 해당되는 중앙처리장치인 CPU를 중심으로 입출력장치와 네트워크 통신망을 통해 기의 흡인력과 반발력을 상기해본다면 생각보다 매우 간단하다는 것을 알 수 있다. 우주의 기를 인체 내로 끌어와 기의 퇴적층을 이루면 되는 일이기 때문이다.
특히 우주의 기를 인체 내로 끌어오는 데 있어 디스크의 접근시간은 매우 중요한 역할을 한다고 볼 수 있다.
디스크의 접근시간 :
접근시간(Access Time) = 탐색시간(Seek Time) + 회전지연시간(Rotational Latency) + 전송시간(Transfer Time)
① 탐색시간(Seek Time) : 헤드를 적정 트랙으로 이동하는 데 걸리는 시간
② 회전지연시간(Rotational Latency) : 데이터가 현재의 위치에서 디스크 헤드까지 회전하는 데 소요되는 시간(latency time)
③ 전송시간(Transfer Time) : 실제 바이트(byte)가 이동하는 데 소요되는 시간
우주의 기를 인체 내로 끌어들이는 과정에서 경락유통의 한 방법인 망의 구성 형태(성형, 링형, 망형, 트리형, 버스형 등)로 점・선・면을 입체적으로 연결 짓는 가장 효율적인 방법으로 집적할 수 있다면 이보다 더 좋은 방법은 없을 것이다. 점과 점을 연결하면 선이 되고 선과 선이 연결되면 면이 된다. 점과 선과 면을 합치면 입체적인 조화를 이룰 수가 있다. 그 과정에서 탐색시간의 최적화와 회전시간의 최적화 그리고 기의 재배치 및 정렬・병합・압축・집약과 전체적인 통합을 통해 자료 전송률을 신속하게 처리할 수 있는 전송시간들을 효율적으로 배분한다면 기가 안정적으로 하단전에 안착할 수 있도록 도와줄 수 있기 때문이다. 그리고 무엇보다도 손에 잡히듯이 눈에 보이지 않는 기를 인체 내로 끌어들이기 위해서는 구체적인 이론이 뒷받침되어져야하기에 디스크의 접근시간은 매우 중요한 위치에 서 있다고 볼 수 있다. 그리고 인체 내 하단전에서 丹 융합반응을 일으키는 흡인력과 반발력의 작용과도 같은 맥락으로 움직이고 있기 때문이기도 하다. 물론 하단전에만 해당되는 것은 아니지만 적어도 하단전을 통해 폭넓은 방향으로 이동되어질 수 있는 길이 열리기 때문에 디스크의 접근시간은 그만큼 중요하다고 볼 수 있다.
뇌에 해당되는 CPU를 기반으로 속도, 용량, 성능에 따라 계층적으로 분류한 기억장치 계층구조면에서 고려해보면 가장 빠른 레지스터를 기점으로 캐시 메모리>연관기억장치(결합기억장치. 복수모듈기억장치. CAM(content addressable memory))>주기억장치(RAM, ROM, 자기코어)>보조기억장치(자기드럼>하드디스크(HDD)>광디스크(CD-ROM, DVD, Blu-Ray)>플로피디스크(FDD)>자기테이프) 등을 응용하여 각종 프로그램(문서작성 및 그래픽, 동영상 등)을 작동하거나 네트워크 통신망을 이용하여 사회관계망인 SNS나 인스타그램 등 게임을 하듯이 전략적으로 접근한다면 보다 효율적인 기의 응집력을 도모할 수 있을 것이다. 그러고 보면 의념은 정신과 마음과 연결되어져 있어 그 끝이 보이지 않을 정도로 무한하게 우주와 연결되어져 있음을 알 수 있다.
2019년 10월 24일 목요일
청아당 엄 상 호 글