728x90

pintos 30

11Week 24.03.28 - 24.04.03 부제 : 야호!!

회고 야호!! 야호를 몇 번째 쓰는 줄 모르겠다. 하지만 진짜 정말로 즐겁다. 왜냐!! 왜냐하!!!!!!!! 왜냐하면!!!!!!!!!!!!!!!!!!! 잘 끝마쳤으니까 project 1,2,3 중 가장 힘들었지만, 가장 성취감있고, 가장 재미있었다. vm에 대해서 이론적으로 알고 있던 부분을 구현을 하면서 다양한 트러블 슈팅을 겪을 수 있었고, 개인적으로 많이 성장하는 시간을 가질 수 있었다. 핀토스 주차가 드디어 끝났다. 하지만 아직은 내가 했던 것들이 완전하게 내 것이 되었냐 하면 그것은 아니다. 내것으로 만드는 시간과 새로운 공부를 하는 시간의 비율을 잘 지켜 더욱 더 성장할 수 있게 해야겠다. 하루하루 강해지는 나.. 사이어인 아닐까? 더 더 더더더더더 강해지고 싶다. 할 수 이따!! KPT 회고..

Project3. Virtual Memory

Project3. Virtual Memory Git Book https://github.com/EririnG/PintOS_Kaist GitHub - EririnG/PintOS_Kaist: PintOS_Kaist PintOS_Kaist. Contribute to EririnG/PintOS_Kaist development by creating an account on GitHub. github.com Krafton Jungle Week 11 Team 2 WIL Project 3 VM : Memory Management ~ Swap In/Out 느낀점 드디어 길고 길었던 Pintos가 끝이 났다. 핀토스를 진행하며 좌절이란 좌절도 정말 많이했고, 그만큼 성취감이나 즐거움 또한 있었다. 특히 무언가를 해결해서 ..

Study/PintOS 2024.04.03

24.04.03 PintOS

야호!!!!!! 성공적으로 project3를 끝마친 것 같다. 생각보다 너무 잘했고, 힘들었지만 그만큼의 성취감도 있었다. 야호~ PintOS bool file_backed_initializer(struct page *page, enum vm_type type, void *kva) { /* Set up the handler */ page->operations = &file_ops; struct file_page *file_page = &page->file; file_page->aux = page->uninit.aux; return true; } swap in을 위해서 page->uninit.aux를 file\_page->aux에 받아왔다. static bool file_backed_swap_out(str..

24.04.01 운영체제, PintOS, 백준

아니 벌써 4월임..ㄷㄷ 이거 신기한거시와요 하와와 어느새 4월이 왔슴니다.. 어느새 2분기가 시작했다구욧!! 시ㅣㄴ나기한거시에요… 운영체제 34. 분산시스템 웹브라우저가 지구상 어딘가에 있는 웹 서버에 접속하면 클라이언트/서버 분산 시스템이라는 구조에 한 구성원이 된다. 분산 시스템의 핵심 사안은 실패와 고장의 극복이다. 개별 구성요소들은 자주 고장나지만 기계들은 고장없는 시스템처럼 보이도록 만들 수가 있다. 또 다른 중요한 문제가 있다. 시스템 성넝은 매우 중요한 요소이다. 분산된 시스템들을 연결하는 네트워크에서는 시스템 설계자들은 주어진 목적을 달성하는데 많은 신경을 써야한다. 마지막으로 보안 역시 매우 중요한 요소이다. 원격 사이트를 접속할 때, 접속한 사이트가 진짜 원했던 사이트인지를 확신할 수..

24.03.31 운영체제, PintOS

운영체제 33. 데이터 무결성과 보호 33.1 디스크 오류 모델 디스크는 완전하지 않으며 오류가 발생할 수 있다. 현대의 디스크들은 정상적으로 동작하는 것처럼 보이지만 블럭들을 읽는데 실패하는 경우가 있다. 우리가 살펴볼 만한 것은 두 가지 종류의 단일 - 블럭 오류가 있다. 각각은 숨어있는 섹터 에러(Latent Sector error, LSE)와 블럭손상(block corruption)이다. LSE는 디스크 섹터가 어떤 이유로든 손상되었을 때 발생한다. 예를들어, 디스크 헤드가 표면에 어떤 이유로 닿았다면(head crash, 일반적인 상황에서는 일어나면 안된다) 표면을 망가뜨릴것이고 비트들을 읽을 수 없게 만든다. 강한 방사선도 역시 비트를 반전시켜서 내용을 부정확하게 만들 수 있다. 다행스러운 것..

24.03.30 운영체제, PintOS

운영체제 32. 크래시 일관성 : FSCK와 저널링 여타 자료구조와는 다르게 파일 시스템의 자료구조는 안전하게 저장되어야 한다. 파일 시스템이 가진 가장 큰 어려움은 전력 손실이나 시스템 크래시가 발생하는 상황에서도, 어떻게 안전하게 디스크 상의 내용을 갱신하는 가에 대한 문제이다. 전력손실이나 크래시 때문에 디스크 상의 자료구조를 안전하게 갱신하는 것은 상당히 까다로운 작업이 된다. 파일 시스템은 크래시 일관성(crash - consistency)라는 새롭고 흥미로운 문제에 직면한다. 어떤 특정 작업을 위해 자료구조 A와 B를 갱신해야 한다고 했을 때 디스크는 한 번에 하나의 요청만 처리할 수 있기 때문에 두 요청 중 하나의 요청이 먼저 디스크에 도달할 것이다. 하나의 쓰기 작업만 완료한 상태에서 시스..

24.03.29 운영체제, PintOS

운영체제 31. 지역성과 Fast File System 구형 파일 시스템의 장점은 단순하다는 것이며, 파일 시스템의 가장 기본적인 개념인 파일과 디렉터리만을 제공한다. 31.1 문제 : 낮은 성능 문제는 성능이 형편없다는 것이다. 구형 파일 시스템의 핵심 문제는 디스크를 마치 임의 접근 기억 장치(RAM)처럼 사용한다는 것이다. 데이터를 저장하는 매체가 디스크라는 사실을 무시하고 여기저기에 데이터를 저장하고 있기 때문에 디스크 헤드를 이동시키는데 많은 시간이 소요된다. 더 안좋은 것은 파일 시스템이 빈 공간을 효율적으로 관리하지 않기 때문에 결국에는 공간이 단편화된다. 빈 공간들이 디스크 전역에 흩어져 있으며, 새로운 블럭 할당시 무조건 리스트에서 다음 빈 블럭을 할당한다. 그 결과 파일을 순차적으로 읽..

24.03.28 운영체제, PintOS, 백준

운영체제 30. 파일 시스템 구현 30.1 생각하는 방법 파일 시스템에 대해 학습할 때, 두 가지 측면에서 접근할 것을 권장한다. 첫 번째는 파일 시스템의 자료구조이다. 즉 파일 시스템이 자신의 데이터와 메타 데이터를 관리하기 위해 어떤 자료구조가 있어야 하는지 여러 파일 시스템은 배열과 같은 간단한 자료구조로 표현하지만 SGI의 XFS와 같은 파일 시스템은 좀 더 복잡한 트리 기반 자료 구조를 사용한다. 두 번째 측면은 접근 방법(access method)이다. 프로세스 호출하는 명령들은 자료구조와 어떤 관리이 있는가? 특정 시스템 콜을 실행할 때 어떤 자료구조들이 읽히는가 파일 시스템의 자료구조와 접근방법을 이해하였다면, 실제 동작 방식에 대한 개념 모델을 제대로 정립하는 것이다. 30.2 전체 구성..

24.03.27 운영체제, PintOS, 백준

운영체제 29. Redundant Array of Inexpensive Disk(RAID) 여러개의 디스크를 조화롭게 사용하여 고속이면서 대용량의 신뢰할 수 있는 디스크 시스템을 만든다. 외면적으로 RAID는 하나의 디스크 처럼 보인다. 읽거나 쓸 수 있는 블럭의 그룹으로 보인다. 안을 들여다보면 RAID는 여러개의 디스크와 메모리, 시스템을 관리하기 위한 하나 또는 그 이상의 프로세스로 이루어진 복잡한 기계이다. RAID 하드웨어는 컴퓨터 시스템과 매우 유사하며 디스크의 그룹을 관리하기 위한 전용 시스템이다. RAID는 단일 디스크에 비해 여러 장점들을 제공한다. 하나의 장점은 성능이다. 디스크를 여러개 병렬적으로 사용하면 I/O 시간이 크게 개선된다. 또 다른 장점은 용량이다. 데이터의 양이 많아지면..

24.03.26 퀴즈, 운영체제, PintOS, 백준

퀴즈 1. 페이지 테이블 접근 시 TLB가 어떻게 페이지 테이블의 성능을 향상시키는지 설명하고, TLB miss가 발생하면 시스템이 어떤 과정을 거쳐 메모리에 접근하는지 설명하세요. TLB는 자주 사용되는 주소 변환 정보를 빠르게 참조할 수 있도록 하는 캐시 메모리이다. TLB에 원하는 주소 변환 정보가 있으면, 페이지 테이블을 참조하지 않고 바로 물리적 주소를 얻을 수 있어 성능이 향상된다. TLB miss일 대 시스템은 페이지 테이블을 조회하여 물리적 주소를 찾고, 이 정보를 TLB에 업데이트 한다. 2. 페이징 기법을 사용하는 메모리 관리 시스템에서, 페이지 프레임 수를 늘리는데도 page fault가 발생하는 빈도가 오히려 늘어나는 경우가 있습니다. 이를 Belady의 역설이라고 하는데, 이런 현..

728x90