CS/운영체제

CS/운영체제

[5주차] 물리 메모리, 가상 메모리

물리 메모리메모리 관리자가 하는 일메모리 관리자는 메모리 관리 유닛(MMU)라는 하드웨어이다.메모리 관리자의 작업은 가져오기, 배치, 재배치를 수행한다.가져오기(fetch)프로세스외 데이터를 메모리로 가져온다.요청할때 메모리로 가져오거나, 미리 가져오는 방법이 있다.배치 작업 (placement)가져온 프로세스를 메모리의 어느 위치에 올려놓을지 결정한다.페이징 : 메모리를 같은 크기로 자르기세그먼테이션: 프로세스의 크기에 맞게 자르기재배치 작업 (replacement)메모리에 새로운 프로세스를 가져오기 위해 오래된 프로세스를 내보내는 작업앞으로 사용하지 않을 프로세스를 내보내면 시스템의 성능이 올라가지만, 자주 사용할 프로세스를 내보낸면 성능이 떨어진다.교체 알고리즘 : 앞으로 사용하지 않을 프로세스를 ..

CS/운영체제

[4주차] 프로세스 동기화, 교착 상태

프로세스 동기화병행성(동시성)에 대해 설명해주세요.작업이 동시에 실행되는 것처럼 보인다.싱글 코어 : 시분할 기법(time-slicing)을 사용하여 cpu 시간을 나누어 사용한다.멀티 코어: 물리적으로 병렬로 동작할 수 있다. (실제 병렬 처리 가능) 병행 프로세스프로세스 여러개가 실제로 동시에 실행되는 것각 프로세스는 독립적으로 작업을 수행하거나 다른 프로세스와 협력하면서 특정 기능을 수행한다.병행 프로세스는 제한된 자원을 공유하기 위해 자주 상호작용한다.상호작용하는 프로세스들은 순서에 맞게 실행되도록 동기화시켜야한다.영역진입 영역 : 해당 자원의 임계영역에 들어갈 수 있는지 요청임계 영역 : 공유 자원 접근 순서에 따라 실행 결과가 달라지는 부분출구 영역: 임계영역에서 수행을 마치고 나갈 프로세스를..

CS/운영체제

[3주차] CPU 스케줄링

CPU 스케줄링CPU 스케줄링에 대해 설명해주세요.운영체제가 프로세스들에게 공정하고 합리적으로 CPU 자원을 배분하는 것여러 프로세스의 상황을 고려하여 CPU와 시스템 자원을 어떻게 배분할지 결정한다.어떤 프로세스에게 CPU를 할당할것인가?CPU 스케줄러 = 프로세서 스케줄러 스케줄러의 종류는 무엇이 있나요?고수준 스케줄링 (장기 스케줄링, 작업 스케줄링) : 시스템 내의 전체 작업 수를 조절하는 것작업은 여러개의 프로세스로 이루어질 수 있다.어떤 작업을 시스템이 받아들일지 결정한다.실행 가능한 프로세스의 총 개수가 정해진다.중수준 스케줄링 : 전체 시스템의 활성화된 프로세스 수를 조절하여 과부하를 막는다.시스템에 과부하가 걸려서 전체 프로세스 수를 조절해야한다면, 이미 활성화된 프로세스 중 일부를 보류..

CS/운영체제

[2주차] 프로세스와 스레드

프로세스와 스레드📎 프로세스프로그램에 대해 설명해주세요.저장장치에 저장되어 있는 데이터, 정적인 상태하드디스크 같은 저장장치에 보관되어 있다가 마우스로 더블클릭하면 실행된다. 프로세스에 대해 설명해주세요.프로그램을 메모리에 적재하여 실행, 동적인 상태실행중인 프로그램컴퓨터 시스템의 작업 단위(task)프로세스 종류포그라운드 프로세스 : 사용자가 보는 앞에서 실행되는 프로세스사용자와 상호작용백그라운드 프로세스(=daemon): 사용자의 뒷편에서 실행되는 프로세스 프로그램 -> 프로세스운영체제는 프로그램을 메모리의 사용자 영역의 적당한 위치로 가져온다.동시에, 커널 영역에 프로세스 제어 블록(PCB)를 생성하여 프로세스를 처리하는데 필요한 정보를 기록한다.프로세스가 종료되었을 경우 프로세스가 메모리에서 삭..

CS/운영체제

[1주차] 운영체제 개요 & 컴퓨터 시스템 동작원리

운영체제 개요 & 컴퓨터 시스템 동작원리 운영체제는 무엇이고 어떤 역할을 수행하는지 설명해주세요.운영체제란 실행할 프로그램에 필요한 자원을 관리하고 사용자에게 편리한 인터페이스를 제공하는 소프트웨어이다.운영체제는 사용자 인터페이스를 제공하여 하드웨어와 사용자 사이 중개자 역할을 한다.GUI(Graphical User Interface)를 통해 마우스를 이용해 조작할 수 있다. 운영체제 역할자원 관리키보드, 네트워크 카드 등의 자원을 응용 프로그램에 나누어주고 적당한 순서로 자원을 배분하고 회수한다.자원 보호악의적인 사용자나 미숙한 사용자로부터 자원을 보호한다.하드웨어 인터페이스 제공운영체제는 하드웨어 인터페이스를 제공하여 다양한 하드웨어를 표준화된 인터페이스를 통해 통신할 수 있다.운영체제는 각 하드웨어..

CS/운영체제

[운영체제] Chrome이 멀티 프로세스인 이유

Chrome 구조 Chrome은 멀티 프로세스이다. 크롬은 크게 4가지의 프로세스를 사용한다. 브라우저 프로세스 : 탭 외부 크롬 내장 기능(URL, 북마크바 등) 렌더러 프로세스 : 탭 내부의 웹사이트 표시 플러그인 프로세스 : 웹 사이트에서 사용되는 플러그인 담당 GPU 프로세스 : GPU 사용하는 부분은 해당 프로세스가 담당 💡 프로세스끼리는 `IPC`(Inter Process Communication, 프로세스간 통신)을 사용한다. 즉, 크롬의 Tab은 하나의 렌더러 프로세스를 가지므로, 하나의 프로세스이다. 동작하지 않는 탭은 프로세스를 재시작함으로써 동작시킨다. 왜 멀티 프로세스 구조를 채택했을까? 멀티 프로세스는 무겁지만 브라우저는 웹 사이트의 보안 문제로 인해 이러한 방식을 채택했다. 웹 ..

mint*
'CS/운영체제' 카테고리의 글 목록