Storage Structure
메인 메모리 - CPU가 직접 접근 가능한 저장장치. 전원 공급이 멈추면 내용이 휘발된다. (RAM 등)
보조 기억장치(Secondary strage) - 비휘발성. 메인메모리보다 느리지만 데이터를 영구적으로 저장가능.(HDD,SSD, USB 등)
자기 디스크(magnetic disk) - 대표적으로 하드디스크가 있음
전자식 디스크(Electronic disk) - 한 종류로 flash memory가 있음. 플래시메모리는 SSD, USB등이 있고, EEPROM과 유사하게 동작함.
storage system은 다음과 같은 기준으로 정렬할 수 있다..
-속도
-비용
-크기
-휘발성
strage system 계층에서
위로갈수록 용량당 가격이 비싸고 빠르다.
캐싱 - 아래 계층의 데이터를 윗쪽(빠른) 스토리지로 값을 복사해 가져옴.
이를 통해 메모리에 접근하는 시간을 줄이고, 처리속도를 올릴 수 있음
Operating System Structure
-Multiprogramming
-Multitasking
Multiprogramming
효율성(efficiency)을 위해 사용된다. (CPU를 쉼 없이 돌릴 수 있게 된다)
프로그램이 실행될 때, computing과 I/O를 수행하게 되는데,
I/O를 수행하는 동안은 CPU가 대기해야한다. 이 때 낭비되는 시간을 줄이기 위해
여러개의 프로그램을 동시에 실행하고, 한 프로그램에서 I/O등으로 인해 CPU가 대기하게 될 때,
다른 프로그램의 computing을 수행하도록 한다.
멀티프로그래밍을 수행하기 위해서는 ready to execute 되어야하는데,
모든 프로그램을 메모리에 올려놓아야 한다.
메모리에 올라간 프로그램은 job scheduling에 의해 하나의 job씩 선택되어 실행된다.
Timesharing(multitasking)
편리성(convenience)을 위해 사용되는 기술이다.
여러개의 CPU시간을 쪼개어, 여러 프로세스를 동시에 실행되는것처럼 한다.
문맥교환이 많이 일어나게되어 효율성이 떨어질 수 있다.
interactive system에서 응답시간을 줄이는 데 기여.
Process Management
process : 현재 실행중인 프로그램. 시스템에서 작업의 단위이다.
프로그램은 정적 엔티티, 프로세스는 동적 엔티티이다.
(프로세스는 메모리에 올라온 것, 프로그램은 보조기억장치에 저장되어있는것)
프로세스는 종료시에 재사용가능한 자원을 모두 반납해야한다.
일반적으로 시스템은 많은 프로세스를 가지고있고, 몇몇 OS는 하나의 CPU로 여러개의 프로세스를 동시에 처리함.
OS가 프로세스 관리를 위해 따라야 할 의무
: 프로세스의 생성,삭제, 중지, 재개
프로세스간 동기화, 통신, 데드락 핸들링 기능 제공.
Memory Management
메모리에는 데이터와 명령어가 있다.
프로그램을 실행하기 위해 모든 명령어는 메모리에 올려야 한다.
OS는 메모리 관리를 위해
: 어느 영역이 누구에 의해 사용되었는지 트래킹해야한다
: 어느 프로세스와 데이터가 들어오고 나가는지 알아야 한다.
: 메모리 공간을 할당할 때 어느영역에 어느만큼쓰는지 기록해두어야 한다.
File Management
OS는 파일시스템&스토리지 관리를 위해
: 파일 및 디렉토리의 생성,수정,삭제,이동 등의 기능을 제공
: 물리적인 디스크 공간을 할당하고, 파일이 저장된 위치를 기록
'2023-1 > 운영체제' 카테고리의 다른 글
CPU scheduler (0) | 2023.04.05 |
---|---|
Process and Scheduling 2 (0) | 2023.03.31 |
Process and Scheduling (0) | 2023.03.16 |
Computer System Organization(Bus, Interrupt) (0) | 2023.03.09 |
Operating System (0) | 2023.03.07 |
댓글