* Processor System
ⓐ Single-Processor System
- 프로세스 타입은 하는 일에 따라서 나눠진다.
> General-purpose processor : 일반적인 프로세서로 CPU를 말한다.
> Special-purpose processor : 특수 목적의 프로세서로 키보드, 디스크등을 컨트롤해주는 프로세스
> 대부븐의 컴퓨터는 하나의 General-purpose processor와 다수의 special-purpose processor를 가지며
이를 통틀허 Single-Processor System이라고 한다.
ⓑ Multiprocessor System
- General-purpose processor가 여러개 있는 것을 의미한다.
- 단위 시간당 할 수 있는 일이 증가하는 것이다. 절대 속도가 증가하는 것이 아니다.
- Single-Processor 컴퓨터 여러대가 있는 것보다 Multiprocessor 컴퓨터 한대있는게 훨씬싸다.
- 하나의 processor 고장이 있어도 지속적으로 시스템이 동작하며, 속도가 급격하게 느려지지 않는다.
(신뢰성, 안전성 향상)
- Multiprocessing Type
① Asymmetric Multiprocessing(비대칭적)
> 하나의 대표 Processor하나가 지정되 있고, 나머지는 slave로써 활동을 한다.
② Symmetric Multiprocessing(SMP/대칭적)
> 모든 프로세서가 같은 역할을 하여, 하는 일을 배분 받는다.
ⓒ Multi-core Processor
- Multiple computing core를 하나의 칩으로 만든 것이다.
- Multiprocessing System과 같은 맥락이지만 Bus와 Energy의 효율을 위해서 Multi-core를 사용한다.
* Clustered System(분산처리 시스템)
- 계산을 많이 해야하는 분야에서 사용
ⓐ Multi-programming
- 해야할 일을 하나의 스텍에 쌓아 놓는다.
- 하나의 일을 계속 실행하다가 잠시 멈추게 되면 그때 다른 일을 실행한다.
> 하나의 일이 실행 되고 있다면 다른 시스템은 대기 상태가 되어야 한다.
- 여러개의 프로그램을 한번에 돌리지 못하고 하나의 프로그램에 올인하는 문제점이 있다.
ⓑ Time sharing(= multitasking)
- 하는 일들을 조금씩 나눠서 모두 실행을 해준다.
- 사용자는 컴퓨터와 상호 작용을 할수 있으며, 여러 유저가 시스템을 공유 할 수 있는 장점이 있다.
- 멀티테스킹이 이뤄지기 위해서는 Job scheduling과 CPU scheduling 기술이 필요하다.
※ 프로세스 : 프로그램이 메모리에 올라와서 실행중인것.
* OS 연산
- 현대 컴퓨터는 interrupt-driven하다.
- Hardware interrupt와 software interrupt(= trap, exception)이 존재한다.
- 인터럽트 연산/대응을 위해서 dual-mode를 가지고 있다.
> Mode bit : mode를 나타내는 bit
> user mode에서 system call을 하면 mode bit이 변경하여 kernal mode로 가고, system call을 수행하고
다시 mode bit을 변경하여 user mode로 돌아간다.
> system call : 프로세스가 OS에 요청하는 행동으로 trap(software interrupt)형태로 발생한다.
* OS가 하는 일
ⓐ Process Management
- 실행되고 있는 프로그램을 관리하는 것
- CPU, memory, IO, files, Initialization data등을 관리해준다.
- 프로세스가 종료되면 자원을 회수한다.
- 활동
> 유저와 시스템 프로세스 생성과 삭제
> 일시 정지와 재실행 관리
> 프로세스 동기화를 위한 메커니즘 제공
> 프로새스 통신을 위한 메커니즘 제공
> deadlock handling
: resource공유시 어떤 프로세스가 다른 프로세스가 사용하는 resource를 사용하려고 할때 발생
ⓑ Memory Management
- Memory과 꽉차게 되면 virtual memory(HDD를 임시로 memory처럼 사용하는 것)기능을 수행
ⓒ Storage Management
ⓓ Mass-storage Management
※ Managed by
- register : compiler > 기계언어에서 register 사용을 지시하므로...
- cache : hardware
- main memory : os
- disk storage : os
ⓐ Single-Processor System
- 프로세스 타입은 하는 일에 따라서 나눠진다.
> General-purpose processor : 일반적인 프로세서로 CPU를 말한다.
> Special-purpose processor : 특수 목적의 프로세서로 키보드, 디스크등을 컨트롤해주는 프로세스
> 대부븐의 컴퓨터는 하나의 General-purpose processor와 다수의 special-purpose processor를 가지며
이를 통틀허 Single-Processor System이라고 한다.
ⓑ Multiprocessor System
- General-purpose processor가 여러개 있는 것을 의미한다.
- 단위 시간당 할 수 있는 일이 증가하는 것이다. 절대 속도가 증가하는 것이 아니다.
- Single-Processor 컴퓨터 여러대가 있는 것보다 Multiprocessor 컴퓨터 한대있는게 훨씬싸다.
- 하나의 processor 고장이 있어도 지속적으로 시스템이 동작하며, 속도가 급격하게 느려지지 않는다.
(신뢰성, 안전성 향상)
- Multiprocessing Type
① Asymmetric Multiprocessing(비대칭적)
> 하나의 대표 Processor하나가 지정되 있고, 나머지는 slave로써 활동을 한다.
② Symmetric Multiprocessing(SMP/대칭적)
> 모든 프로세서가 같은 역할을 하여, 하는 일을 배분 받는다.
ⓒ Multi-core Processor
- Multiple computing core를 하나의 칩으로 만든 것이다.
- Multiprocessing System과 같은 맥락이지만 Bus와 Energy의 효율을 위해서 Multi-core를 사용한다.
* Clustered System(분산처리 시스템)
- 계산을 많이 해야하는 분야에서 사용
ⓐ Multi-programming
- 해야할 일을 하나의 스텍에 쌓아 놓는다.
- 하나의 일을 계속 실행하다가 잠시 멈추게 되면 그때 다른 일을 실행한다.
> 하나의 일이 실행 되고 있다면 다른 시스템은 대기 상태가 되어야 한다.
- 여러개의 프로그램을 한번에 돌리지 못하고 하나의 프로그램에 올인하는 문제점이 있다.
ⓑ Time sharing(= multitasking)
- 하는 일들을 조금씩 나눠서 모두 실행을 해준다.
- 사용자는 컴퓨터와 상호 작용을 할수 있으며, 여러 유저가 시스템을 공유 할 수 있는 장점이 있다.
- 멀티테스킹이 이뤄지기 위해서는 Job scheduling과 CPU scheduling 기술이 필요하다.
※ 프로세스 : 프로그램이 메모리에 올라와서 실행중인것.
* OS 연산
- 현대 컴퓨터는 interrupt-driven하다.
- Hardware interrupt와 software interrupt(= trap, exception)이 존재한다.
- 인터럽트 연산/대응을 위해서 dual-mode를 가지고 있다.
> Mode bit : mode를 나타내는 bit
> user mode에서 system call을 하면 mode bit이 변경하여 kernal mode로 가고, system call을 수행하고
다시 mode bit을 변경하여 user mode로 돌아간다.
> system call : 프로세스가 OS에 요청하는 행동으로 trap(software interrupt)형태로 발생한다.
* OS가 하는 일
ⓐ Process Management
- 실행되고 있는 프로그램을 관리하는 것
- CPU, memory, IO, files, Initialization data등을 관리해준다.
- 프로세스가 종료되면 자원을 회수한다.
- 활동
> 유저와 시스템 프로세스 생성과 삭제
> 일시 정지와 재실행 관리
> 프로세스 동기화를 위한 메커니즘 제공
> 프로새스 통신을 위한 메커니즘 제공
> deadlock handling
: resource공유시 어떤 프로세스가 다른 프로세스가 사용하는 resource를 사용하려고 할때 발생
ⓑ Memory Management
- Memory과 꽉차게 되면 virtual memory(HDD를 임시로 memory처럼 사용하는 것)기능을 수행
ⓒ Storage Management
ⓓ Mass-storage Management
※ Managed by
- register : compiler > 기계언어에서 register 사용을 지시하므로...
- cache : hardware
- main memory : os
- disk storage : os