본문 바로가기

CS22

4. 시분할 다중프로그래밍(Time Sharing Multi-Programming) OS 시분할 다중 프로그래밍의 출현 배경? 시분할 다중 프로그래밍은 다중 프로그래밍 기법과 거의 동시에 연구가 시작되었다. 다중 프로그래밍과 마찬가지로 배치 처리에 대한 문제점을 개선하고자 연구되었으나 다중 프로그래밍 방식의 문제점도 발견하고 연구하게 되었다. 발견한 문제점은 비대화식 처리 방식과 그로 인한 느린 응답, 오랜 대기 시간의 문제이다. 대화식 시스템 시분할 운영체제는 사용자에게 빠른 응답을 제공하기 위해 대화식 시스템을 제안했다. 키보드와 모니터를 통해 메인 컴퓨터에 모뎀 간 연결 후 시간에 따른 처리를 하는 방법이다. 각 사용자는 메인 PC에 여러 키보드와 여러 터미널을 통해 응답 받을 수 있다. 핵심은 사용자의 입력 속도보다 컴퓨터의 연산 속도가 빠르므로 사용자 입장에서는 응답이 느리다고 생각.. 2024. 4. 21.
3. 다중 프로그래밍 (Multi-Processing) OS 다중 프로그래밍 기법이 출현한 배경을 생각해보자. 이전, 배치 처리에서 어떤 문제로 인해 다중프로그래밍 방식의 아이디어가 제안 되었을 것이다. 배치 처리는 일괄적으로 처리할 수 있게 되었지만 CPU 작업 중 특정 명령 코드에서 I/O 작업을 요청한다. 그럼 컴퓨터는 CPU 작업을 하다가 I/O 작업을 하게 되는데 이 작업이 반복되는 현상이 발생한 것이다. 실질적으로 컴퓨터에서 처리를 하는 HW는 CPU인데 컴퓨터가 I/O 작업을 하면서 CPU는 대기하는 현상이 발생한다. 이것을 CPU idle time 이라고 한다. CPU IDLE Time을 줄이면 CPU 활용률(처리율)이 증가하게 된다. 그래서 다중 프로그래밍 기법이 출현한 것이다. 다중 프로그래밍 기법은 여러 프로그램을 메모리가 수용할만큼 메모리에 .. 2024. 4. 21.
2. 운영체제의 발전 운영체제가 발전한 과정 운영체제는 크게 고정 프로그래밍 방식, 내장 프로그래밍 방식, 로더 프로그램, 원시 운영체제, 최초의 운영체제(배치 운영체제), 다중 프로그래밍 운영체제, 시분할 다중프로그래밍, 개인용 운영체제로 나뉜다. 그 외, 임베디드 운영체제, 모바일 운영체제, 실시간 운영체제, 서버 운영체제 등이 있다. 고정 프로그래밍 방식 (fixed program computer) 1940년대 컴퓨터로 OS에 대한 개념이 없을 때이다. 이 때는 HW만 존재했고 키보드로 명령을 하는 개념이 없을 때이다. 그럼 어떻게 프로그래밍을 했을까? 종이에 스위치와 전선 연결도를 작성하며 배선판에 전선을 연결하는 방식을 사용했다. 하나의 계산을 위해 한 번의 입력(전선 연결)이 오래 걸리고 연산에도 오래 걸려서 고정.. 2024. 4. 21.
1. 운영체제(OS, Operating System)란? 운영체제는 사용자와 H/W 사이에서 중계 역할을 하는 녀석이다. 아래 그림을 통해 어떻게 중계하는지 확인할 수 있다. 실제 응용 소프트웨어를 사용하기 위해 키보드, 마우스 입력을 모두 처리하고 모니터의 출력을 처리하는 작업은 OS가 다 수행하고있다. 그럼 여기서 의문점이 발생할 것이다. OS는 하드웨어인가? 소프트웨어인가? 어느 위치에서 동작하는가? OS는 하드웨어의 입/출력을 관리하지만 정확히 소프트웨어에 해당한다. 소프트웨어 중에서도 System Software에 해당된다. 그럼 또, System Software가 무엇이냐고 묻게 될 것이다. OS에서 System Software에 대해서는 자세하게 알 필요가 없다. 왜냐하면 시스템 프로그래밍이나 리눅스 시스템 프로그래밍과 같은 System Softw.. 2024. 4. 20.