본문 바로가기

운영체제

(8)
운영체제와 정보기술의 원리 운영체제와 정보기술의 원리 - 개정판 저자 반효경 출판사 이화여자대학교출판문화원 출판일 2020.05.04 쪽수 296 서점의 책 소개에 나와있듯이, "온라인 공개강좌 KOCW에서 꾸준히 호평받아온 이화여대 반효경 교수의 컴퓨터 입문서이다." 나 또한 인터넷에서 많이 추천하는 것들 보고 책을 구매하고 강의를 보게 되었다. 책에서는 생활에서 쉽게 찾아볼 수 있는 예제를 통해 독자의 이해를 돕고 있다. 책을 통해 운영체제의 전반적인 시스템을 쉽게 이해할 수 있었다. 1장은 컴퓨터와 정보기술의 역사에 관한 내용이고, 2장부터 본격적인 운영체제 설명이 시작된다. 2장 운영체제 개요에서 짧게 언급된 내용들은 3장부터 하나씩 자세히 설명된다. 처음엔 강의를 주로 하고, 책을 부로 해서 공부하고자 했는데, 책을 주로..
운영체제와 정보기술의 원리7 메모리 관리 1. 주소 바인딩 논리적 주소(가상 주소) : 프로세스만의 독자적인 가상 메모리 주소 공간 물리적 주소 : 물리적 메모리에 실제 올라가는 위치 주소 바인딩 : 주소를 결정하는 것. 논리적 주소를 물리적 주소로 변환. Symbolic Address → Logical Address → Pysical Address 시점에 따른 주소 바인딩 - 컴파일 타임 바인딩 : 컴파일 시점에 물리적 메모리 주소가 결정되는 방식. 비현실적이고 현대에는 잘 사용하지 않음. 절대 코드 생성. - 로드 타임 바인딩 : 실행이 시작될 때 물리적 메모리 주소가 결정되는 방식. 재배치 가능 코드 생성. - 실행 시간 바인딩 : 프로그램 실행이 시작될 때 물리적 메모리 주소가 결정되고, 실행 후에도 물리적 메모리 주소가 변경될 수 있는..
운영체제와 정보기술의 원리6 CPU 스케줄링 1. CPU 스케줄링의 등장 이유 일반 명령 : CPU 내에서 수행되는 명령이나 메모리에 접근하는 명령 특권 명령 : 모든 입출력 명령 CPU 버스트 : 사용자 프로그램이 직접 CPU를 가지고 수행하는 명령 I/O 버스트 : 사용자 프로그램 수행 중 I/O 요청이 발생해서 입출력 작업을 수행하는 명령 I/O 바운스 프로세스(I/O bound Job) : I/O 요청이 빈번해서 CPU 버스트가 짧게 나타나는 프로세스 (예) 대화형 프로그램 CPU 바운스 프로세스(CPU bound Job) : I/O 작업이 거의 없고 CPU 버스트가 길게 나타나는 프로세스 (예) 계산 위주의 프로그램 이와 같이 CPU 사용 패턴이 프로그램마다 다르므로, CPU 스케줄링을 통해서 CPU를 효율적으로 사용할 수 있도록 하는 것..
운영체제와 정보기술의 원리5 프로세스 관리 1. 프로세스 개념 프로세스 : 실행 중인 프로그램 process in execution 프로세스의 문맥 context : 프로세스의 주소 공간, 레지스터 값, 커널에서 수행한 일의 상태, 커널이 관리하고 있는 각종 정보 등을 포함하는 현재 상태 (프로세스 문맥을 통해서 과거의 상태도 알 수 있다.) 2. 프로세스의 상태 시작 New : 프로세스를 생성 중인 상태 준비 Ready : 프로세스가 CPU만 보유하면 당장 명령을 실행할 수 있지만, CPU를 할당받지 못한 상태 실행 Running : 프로세스가 CPU를 보유하고 기계어 명령을 실행하고 있는 상태 봉쇄 Blocked : CPU를 할당받더라도 당장 명령을 실행할 수 없는 상태 (예) 입출력 작업 진행, 시간이 오래 걸리는 작업 완료 Terminat..
운영체제와 정보기술의 원리4 프로그램의 구조와 실행 앞선 장에 나온 내용들을 다시 한 번 되짚어주는 내용이 많았다. 1. 프로그램의 구조와 인터럽트 프로그램의 주소 영역(Virtual memory)은 크게 코드, 데이터, 스택 영역으로 구분된다. 코드 영역은 작성한 코드가 기계어 명령 형태로 변환되어 저장되어 있는 부분이고, 데이터 영역은 전역 변수 등 프로그램잉 사용하는 데이터를 저장하는 부분이다. 스택 영역은 일반적인 프로그램에서 함수가 수행을 마치고 복귀할 주소와 데이터를 임시로 저장하는 곳이다. 시스템 콜이나 인터럽트 때문에 CPU를 빼앗긴 위치는 프로세스 제어블록(PCB)에 저장된다. 2. 컴퓨터 시스템의 작동 개요 프로그램 카운터(Program Counter: PC) : CPU가 수행해야할 메모리 주소를 담고 있는 곳. 다음 명령 주소를 가지고..
운영체제와 정보기술의 원리3 컴퓨터 시스템의 동작 원리 1. CPU 연산과 I/O 연산 컴퓨터에서 연산을 한다는 것은 CPU가 무언가 일을 한다는 뜻이다. 입출력 장치의 연산 : 입출력 컨트롤러가 담당 컴퓨터 내의 연산 : 메인 CPU가 담당 로컬 버퍼 : 장치 컨트롤러로부터 받고 나가는 데이터를 임시로 저장하는 곳 2. 인터럽트Interrupt 인터럽트 : 컨트롤러들이 CPU의 서비스가 필요할 때 이를 통보하는 방법이다. (앞서 인터럽트를 초인종 소리에 비유한 바 있다.) CPU는 명령 하나를 수행하기 전에 항상 인터럽트가 발생했는지 확인하고, 명령보다 먼저 인터럽트를 처리한다. 인터럽트 벡터 : 인터럽트 종류마다 처리해야할 코드가 위치한 부분을 가리키는 자료구조. 인터럽트 처리루틴 service routine/핸들러 handler : 커널에 보관되어 있다..

728x90