운영체제란?1) 시스템의 자원(cpu, 메모리)과 동작을 관리하는 소프트웨어2) 프로세스, 저장장치(RAM, HDD),네트워킹, 사용자, 하드웨어를 관리 메모리 구조<프로그램 실행 과정>출처: https://jinshine.github.io/2018/
컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층협의(좁은 의미)의 운영체제(커널) : 운영체제의 핵심 부분으로 항상 메모리에 상주하는 부분넓은 의미의 운영체제: 커널 뿐 아니라 각종 주변 시스템 유틸리티를 포함한
1) CPU 스케줄링과 프로세스 관리 CPU 소유권을 어떤 프로세스에 할당할지프로세스의 생성과 삭제자원 할당 및 반환을 관리👉 내가 유튜브를 보고, 카톡을 하고, 구글을 하고 이러한 각각의 프로그램을 프로세스라고 한다. 이렇게 멀티 프로세싱을 할때 어떤 프로세스에
1. 시스템콜 파일에 접근할 때 유저모드에서 시스템콜을 거쳐서 커널모드로 변경된 다음으로 파일 시스템으로 간다. 그 다음 파일을 올바르게 읽은 다음에 이제 유저 모드로 돌아간다. 1) 커널 : 운영체제의 핵심 부분이자 시스템콜을 제공하며 보안, 메모리, 프로세스,
여러 개의 '프로세스', 즉 멀티 프로세스를 통해 동시에 두 가지 이상의 일을 수행할 수 있는 것
공유 자원(shared resource)은 시스템 안에서 각 프로세스, 스레드가 함께 접근할 수 있는 모니터, 프린터, 메모리, 파일, 데이터 등의 자원이나 변수 등을 의미한다.
: 프로세스가 스스로 CPU 소유권을 포기하는 방식이며, 강제로 프로세스를 중지하지 않는다. 따라서, 컨텍스트 스위칭으로 인한 부하가 적다.1) FCFS(First Come, Fist Served): 가장 먼저 온 것을 가장 먼저 처리하는 알고리즘길게 수행되는 프로세스
데이터를 미리 복사해 놓는 임시 저장소이자 빠른 장치와 느린 장치에서 속도 차이에 따른 병목 현상을 줄이기 위한 메모리
캐시의 크기는 메모리보다 작기 때문에 항상 메모리의 일부 페이지만을 가지고 있다. : 직접 매핑이란 메모리의 특정 블록은 특정 캐시라인에만 매핑할 수 있는 것을 말한다.
메모리는 한정되어 있기 때문에 스와핑이 많이 일어난다. 스와핑은 많이 일어나지 않도록 설계되어야 하며, 이는 페이지 교체 알고리즘을 기반으로 스와핑이 일어난다.