본문 바로가기

OS5

3장. 컴퓨터 시스템의 동작 원리 컴퓨터 시스템의 구조 - CPU, 메모리, 디스크, 외부장치 CPU 연산과 I/O 연산 - 외부장치마다 로컬버퍼 달려있음. 다 차거나 지정된 간이 넘으면 컨트롤러가 인터럽트 발생시켜서 전달 인터럽트의 일반적 기능 - 하드웨어 인터럽트, 소프트웨어 인터럽트(트랩, 예외사항 or 시스템콜) 인터럽트 핸들링 - PCG에 레지스터값, 코드메모리 주소, HW 상태 저장 후 CPU제어권이 인터럽트 처리루틴으로 넘어감 입출력 구조 - 동기식 입출력, 비동기식 입출력 차이 DMA - CPU 앞에서 외부장치의 로컬버퍼에서 메모리로 읽어오는 일을 CPU 대신 해줌 저장장치의 구조 - 휘발성, 비휘발성 디스크 저장장치의 계층 구조 - 가성비를 위해 캐싱. 꼭 필요한 부분만 메모리에 올리고 나머지는 디스크의 스왑 영역에 올린.. 2022. 9. 10.
[OS] 가상메모리 개념 정리 OS 공룡책과 패스트캠퍼스 강의, 이화여대 반효경 교수의 KOCW 강의를 정리하였다. http://www.kocw.net/home/search/kemView.do?kemId=1046323 가상메모리: 실제 각 프로세스마다 충분한 메모리를 할당하기에는 메모리의 크기가 한계가 있음. 프로세스는 가상주소를 이용하고, 실제 해당 주소에서 데이터를 읽고 쓸 때만 물리주소로 바꿔줌. 하나의 프로세스만 실행가능한 배치처리시스템에서는 쓸 일이 없으나, 여러 프로세스를 동시 실행하는 시스템에서는 메모리 용량부족, 프로세스 메모리 영역 간의 침범 이슈 때문에 필요함. 프로세스간 공간 분리로 프로세스 이슈가 전체시스템에는 영향을 주지 않음 가상주소를 물리주소로 바꾸는 변환시간을 줄이기 위해서 MMU라는 하드웨어가 필요함. .. 2020. 11. 16.
[OS] 프로세스, 쓰레드 개념 정리 OS 공룡책과 패스트캠퍼스 강의, 이화여대 반효경 교수의 KOCW 강의를 정리하였다. http://www.kocw.net/home/search/kemView.do?kemId=1046323 프로세스 프로세스 구조 코드(텍스트), 데이터(변수,초기화된 데이터), 힙(코드에서 동적으로 만들어지는 데이터), 스택(임시 데이터 - 함수호출, 로컬변수) Stack(임시데이터-함수호출, 로컬변수 저장), Heap(코드에서 동적으로 만들어지는 데이터 저장영역), Data(data 초기값O인 전역변수,bss 초기값X인 전역변수), Code(text) 컨텍스트 스위칭: 프로세서가 다른 프로세스로 스위치할 때, 시스템은 작업 중이던 프로세스의 상태를 PCB 레지스터에 저장하고 새로운 프로세스의 상태를 로드함. 이 것을 co.. 2020. 11. 16.
[OS] 운영체제 구조, 스케쥴링 개념 요약 OS 공룡책과 패스트캠퍼스 강의, 이화여대 반효경 교수의 KOCW 강의를 정리하였다. http://www.kocw.net/home/search/kemView.do?kemId=1046323 운영체제 운영체제는 컴퓨터 하드웨어 바로 위에 설치되는 소프트웨어 계층으로서 모든 컴퓨터 시스템의 필수적인 부분이다. 본 강좌에서는 이와 같은 운영체제의 개념과 역할, 운영체제를 구성하는 각 www.kocw.net OS 구조 OS는 사용자 인터페이스를 Shell, API를 통해서 제공함 system call: 운영체제가 제공하는 시스템 호출 인터페이스. 운영체제 각 기능을 사용할 수 있도록 시스템 콜이라는 명령, 함수 사용함. 시스템콜은 커널모드로만 실행됨. 커널모드로 실행하려면 반드시 시스템콜을 사용해야함. CPU p.. 2020. 11. 16.