컴퓨터는 크게 하드웨어 / 소프트웨어로 구분한다.
소프트웨어의 구분
- 응용 소프트웨어
-목적 : 컴퓨터를 사용하여 주어진 문제 해결
- 시스템 소프트웨어
-목적 : 컴퓨터 시스템의 운영 및 효율적인 활용 지원
비동기적 동작 (Asynchronous Action)
- 시스템 이벤트가 임의 시간에 예상치 못한 순서로 발생하면 비동기적 동작이 발생
- 예) 프로그래머는 프린터의 데이터 요청 시기를 알지 못함
- 프로그램은 모든 가능한 타이밍에 대해 적절히 실행되어야 함
병행성 (Concurrency)
- 동일한 시간 프레임에 시스템 자원을 공유
예) 두 프로그램이 실행 중이며, 각 프로그램이 번갈아 수행됨.
-두 프로그램은 프로세서(processor) 자원을 공유함
- 운영체제가 컴퓨터 시스템과 프로그램 간 병행적 동작을 관리
통신 (Communication)
- 하나의 개체에서 다른 개체로 정보가 이동하는 것
- 로컬 디바이스(예: 하드디스크 등)와의 I/O 외에도 네트워크 I/O도 처리해야 함
다중 프로그래밍 (Multi -programming)
- 하나의 CPU로 여러 개의 작업을 동시에 실행함
- 한 번에 하나의 작업만 처리하던 일괄처리 방식에 비해 작업효율(처리량)이 높음
시분할(Time sharing) 방식
- 다수의 작업에게 CPU 시간을 균등하게 배분하여 (10~100ms) 모든 작업이 동시에 처리되는 것처럼 보이게 함
- 프로세스에게 할당되는 CPU 시간
-타임 슬라이스 또는 타임 퀀텀
-특정 프로세스가 스세틈 자원을 독점하지 못하게 함
<오늘 날의 컴퓨터는 대부분 시분할 기법을 사용한다>
예) 대형 마트
- 가정 : 다수의 계산대(Process), 한 명의 계산원(CPU)dl whswo
- 계산원의 행동
-고객이 가져온 상품들의 가격을 합산한 후 지불을 요청
처리 방식1 : 일괄 처리 시스템
- 계산원은 고객이 돈을 지불할 때까지 기다리며 정산을 마친 후 다음 계산대로 이동함.
처리 방식2: 다중 프로그래밍 시스템
- 계산원은 고객이 돈을 지불할 때까지 기다리지 않고 다음 계산대로 이동하여 대기하는 고객의 상품드르이 가격을 합산함
처리 방식 3: 시분할 시스템
- 계산원이 한 고객 당 최대 10초 동안 가격을 합산하며, 시간이 경과하면 다음 계산대로 이동하여 다른 고객의 상품을 계산함
처리 방식 4: 다중처리기 시스템