[운영체제/OSTEP] 4. Process(Virtualization)
·
OS
본장에 들어가기 전프로세스란?프로세스는 한마디로 "실행중인 프로그램"입니다. 운영체제는 실제로는 소수의 CPU만 가지고 있어도, 여러 프로그램이 동시에 실행되는 것처럼 보이게 하는 환상을 제공합니다.이때 “CPU가 여러 개 있는 것처럼 보이게 하는 기술”이 바로 CPU 가상화입니다. 운영체제의 가상화운영체제는 가상화를 통해 CPU를 여러 프로그램이 동시에 사용하는 것처럼 만들어 줍니다. CPU 가상화는 크게 두 가지 방식으로 설명할 수 있습니다.시분할 기법현재 대부분의 운영체제가 사용하는 방식A 프로세스 실행 → 잠시 중단 → B 프로세스 실행 과 같이 빠르게 전환하여 여러 프로그램이 동시에 돌아가는 것처럼 보이게 함CPU를 공유하기 때문에 각 프로그램이 체감하는 속도는 느려질 수 있음컨텍스트 스위칭(C..
[운영체제/OSTEP] 2. 운영체제에 대한 소개(가상화, 병행성, 영속성)
·
OS
가상화 (Virtualization) CPU 가상화CPU 가상화란?CPU 가상화란 하나의 CPU(혹은 소수의 CPU 집합)를 마치 무한개의 CPU가 존재하는 것처럼 보이도록 만들어, 여러 프로그램이 동시에 실행될 수 있게 하는 기술입니다. 운영체제는 실제로는 하나의 CPU에서 프로그램들을 번갈아가며 실행하지만, 사용자 입장에서는 각 프로그램이 독립된 CPU에서 돌아가는 것처럼 느껴지게 됩니다. CPU 가상화 실습 - cpu.c이제 CPU가 실제로 프로세스를 번갈아 실행하는 모습을 간단한 실습을 통해 확인해보겠습니다. 아래는 사용자가 입력한 문자열을 1초 간격으로 계속 출력하는 간단한 프로그램입니다.cpu.c//cpu.c#include #include #include #include #include "co..
[운영체제/OSTEP] OSTEP으로 운영체제 공부 시작!
·
OS
학교에서 운영체제를 배우고 블로그에도 글 몇 개 정리해두긴 했지만, 시간도 지나면서 기억이 흐려진 부분도 많아졌습니다. 그래서 다시 차근차근 정리하면서 운영체제 개념을 제대로 머릿속에 넣어보자는 마음이 들었고, 그 과정에서 OSTEP이라는 교재를 알게 되었습니다. OSTEP은 위스콘신대학교 Remzi & Andrea 교수진이 공개한 운영체제 교재로, 누구나 무료로 볼 수 있도록 공개되어 있습니다. OSTEP 책을 볼 수 있는 링크입니다! OSTEP - Operating Systems: Three Easy Pieces Operating Systems: Three Easy PiecesBlog: Why Textbooks Should Be Free Quick: Free Book Chapters - Hardco..
[운영체제] 프로세스와 프로세스 관리 공부내용 (프로세스, PCB, 시스템 호출, 좀비 프로세스, 고아 프로세스, fork())
·
OS
- 프로세스란 ? : 프로그램이 메모리에 적재되어 실행 중인 상태- 프로세스 특징메모리를 적재하고 고유한 번호를 할당 (PID)프로세스들이 실행될때 프로세스들은 각자의 독립적인 메모리 공간에서 실행됨IF) 하나의 프로그램을 여러번 실행 ? → 실행마다 각자 독립된 프로세스 실행 (다중 인스턴스) - 프로세스 구성 코드 영역 (고정크기) : 사용자가 작성한 코드와 라이브러리 함수 코드 적재데이터 영역 (고정크기) : 사용자가 선언한 전역 변수와 라이브러리에 선언된 전역 변수  힙 영역 (가변크기) : 프로세스의 실행 중 동적 할당 받는 공간스택 영역 (가변크기) : 프로세스의 실행 시 사용되는 스택 적재 (매개 변수, 지역 변수, 함수 실행 후 돌아갈 주소)- 프로세스 주소 공간· 실제 접근 허용 범위는 ..
[운영체제] 컴퓨터 시스템과 운영체제 공부 내용 (CPU, 인터럽트, 컨텍스트, 컨텍스트 스위칭, 사용자 공간, 커널 공간)
·
OS
- CPU (Central Processing Unit)프로그램 코드 (기계명령)를 해석하여 실행하는 중앙 처리 장치메모리에 적재한 프로그램을 실행- 메모리(RAM)CPU에 의해 실행되는 프로그램 코드&데이터가 적재되는 공간- 캐시 메모리온칩 캐시(on-chip) : CPU 내부에 만들어진 캐시 옵칩 캐시(off-chip) : CPU 외부에 만들어진 캐시- 버스 H/W들이 데이터를 주고받기 위한 디지털 신호가 지나가는 여러 가닥의 선을 다발로 묶어 부르는 용어 종류 (버스에 지나다니는 정보에 따라 구분) : 주소 버스, 데이터 버스, 제어 버스목적에 따른 버스 구분 시스템 버스CPU, 캐시 메모리, 메모리등 빠른 H/W들입출력 버스느린 입출력 장치 - 주소메모리, I/O장치, 저장 장치 내에 있는 저장소..