오늘의 할일 process와 thread , 그리고 핀토스 내에서 어떻게 구현되었는지 살펴보기 마저 alram 해결하기. Process, Thread + PintOS process는 실행 중인 프로그램의 instance이다. thread는 프로세스 내에서 실행되는 실행의 단위. Process A process is a program in execution 시분할(time sharing) 기법을 통해 CPU를 가상화하는데, 이를 구현하기 위해 매커니즘(mechanism)과 운영체제의 스케줄링 정책(scheduling policy)이 필요하다. 구성 요소 주소 공간(address space) 실행 중인 프로그램이 읽고 쓰는 데이터와 명령어가 저장되는 메모리 공간. 프로세스마다 하나씩 존재한다. 레지스터 프로..
오늘의 할 일 Project 1 이해하기 프로세스와 thread에 대해 조금 더 공부하고 정리하기. (이전 판 운영체제 서적 열람 github 페이지 발견(링크)) Project 1 이해하기 코드라는 이름의 망망대해에 둥둥 떠다니는 기분이었지만, 우리에겐 깃북이 있다! 해결해야 하는 테스트들 미리보기 project 1에서 해결해야하는 테스트케이스들의 이름을 살펴보았다. 크게 묶어 3가지로 정리할 수 있다. Alram, Priority, 그리고 MLFQS. 각각 무엇을 수행하는 것일까? 깃북에 각각 무엇을 하면 되는지 있어서 살펴보기로 했다. 그 전에 introduction부터. gitbook 탐색 Project 1 threads / Introduction gitbook (project 1 introduc..
[WEEK07] 정글 끝까지(PintOS) - Threads 오늘의 학습: 공부 키워드 학습 및 간단 정리(초벌구이) 오늘의 할 일: EC2 연결 및 open ssh 사용해보기(vscode) 개념 초벌구이 다 처음 보는 개념들이라 검색하고 서적을 읽는 데에만 시간이 꽤 갔다. Process, Thread 실행단위, thread는 그 안에서 실행되는 자원을 공유하는 별개의 흐름. 내게 가장 잘 와닿았던 비유는 프로세스는 집, 스레드는 방이라는 비유였다. CPU Scheduling 알고리즘 운영체제가 합리적으로 CPU 자원을 process에게 thread에게 주기 위한 전략. 정확히는 CPU에서 어떤 기준/알고리즘으로 최대한 효율적으로 작업을 처리할 것인가. thread에게 : 처음엔 process라고 이해..
CSAPP 6장의 가벼운 정리 출처 https://www.cs.cmu.edu/afs/cs/academic/class/15213-f15/www/schedule.html Point of this chapter SRAM, DRAM, ROM, SSD 가 계층구조에 어떻게 구성되어있는가. cache memories acting as staging areas between CPU and main memory, having the most impact on application program performance for C programmers… the book show how to your C programs for localityand introduce techniques for imporving the loca..
https://www.youtube.com/watch?v=wpaRL-WZn7c&t=410s AVL tree BBST(균형이진트리)의 가장 엄격한 형태의 트리 중 하나로 균형 요소(balance factor)를 1개 이하로 유지한다. 이 균형 요소는 트리의 높이(height)가 노드의 개수에 대해 로그함수적으로 상대적임을 보장한다.(Balance factor guarantees the tree's height to be logarithmic relative to the number of nodes.) Balance Factor 균형 요소 [**] BF란? BF는 balanced Factor의 줄임말로, 왼쪽의 하위 트리의 높이에서 오른쪽의 하위 트리의 높이를 뺀 값을 뜻한다. BF 계산과 균형 판별 중요한..
이진 탐색 트리 Binary Search Tree (BST) 노드 기반 이진 탐색 트리 데이터 구조로 다음 속성을 가진다. 노드의 왼쪽 하위 트리에는 해당 노드의 key보다 적은 값을 가진 노드만 포함한다.(즉, 왼쪽 자식 노드부터는 본 노드보다는 작은 값을 가진다.) 노드의 오른쪽 하위 트리에는 해당 노드의 key보다 큰 값을 가진 노드만 포함한다. 왼쪽과 오른쪽 하위 트리 또한 반드시 이진 탐색 트리여야만 한다. 이러한 속성 덕분에 검색하기 유용하고, 덕분에 이진 ‘탐색’ 트리 라는 이름이 붙었다. 루트에서 시작되어 크고 작음을 비교하며 이동하면 되기에, 이 트리는 비교 횟수가 적은 요소를 검색하는 데 유용하다. 탐색 시간은 트리의 높이에 달렸다. Nodes of BST 이진 탐색 트리의 각 노드는 ..