반응형
System Structure & Program Execution
오늘 강의는 cpu 구성과 용어 정리 위주.
이번 강의는 소화가 어렵다 느끼던 찰나 교수님 왈
"첫 시간에 한 학기 분량을 모두 설명드리고있으니 이번 학기의 첫 번째 난관이다"
네가 선택한 운영체제다 악으로깡으로 버텨라🤯

컴퓨터 시스템은 크게 CPU, memory, I/O device로 구성한다.
메모리 => cpu의 작업 공간
cpu는 매 클럭마다 메모리에서 기계어를 읽어서 실행시킨다
I/O device는 로컬 버퍼라는 개별 작업공간을 갖는다.
- mode bit 실행중인 프로그램이 운영체제인지, 사용자 프로그램인지 구분해주는 역할(boolean)
- 운영체제가 CPU를 갖는 경우 0 => 메모리접근, I/O디바이스 접근 등 모든 작업이 가능함.
- 사용자 프로그램이 CPU를 갖는 경우 1 => I/O접근, 운영체제의 메모리 접근 등 보안관련하여 사용 기능 제한
- timer 특정 프로그램이 CPU를 독점하는것을 방지함 (수십 밀리세컨을 프로그램에 할당하여 cpu에 넘겨줌)
- 프로그램이 배정받은 timer가 만료되면 timer는 CPU에게 interrupt를 걸고, CPU는 OS로 돌아간다.
- CPU는 인스트럭션이 끝나면 interrupt line을 체크하고 OS로 돌아간다. (무한 루프 도는 것을 방지할 수 있음)
- DMA(direct memory access) CPU는 interrupt를 많이 당하면 퍼포먼스가 떨어짐.
- I/O장치의 작업 결과물을 로컬버퍼에서 DMA가 대신 메모리에 복사해주고, CPU에 보고한다.
- 이때 같은 데이터에 접근하지 않도록 메모리 컨트롤러 존재
- 시스템 콜
- 사용자 프로그램은 I/O장치에 직접 접근할 수 없음, 반드시 운영체제를 통해야함(mode bit)
- 사용자 프로그램이 I/O를 요하는 경우 OS에 CPU를 넘긴다.
- 인터럽트
- 하드웨어 인터럽트(일반적) => i/o디바이스, 타이머 등에 의한 인터럽트
- 소프트웨어 인터럽트(트랩) => 사용자 프로그램이 직접 인터럽트를 거는 경우
- 인터럽트 벡터에 해당 인터럽트 처리 루틴 주소를 가짐
반응형
'항해99' 카테고리의 다른 글
참고할 블로그, 유튜브 등 (0) | 2022.03.03 |
---|---|
면접 정리 (0) | 2022.03.02 |
실행컨텍스트 (2) | 2022.02.21 |
운영체제 1차시 (0) | 2022.02.20 |
깊은 복사와 얕은 복사 (1) | 2022.02.20 |