본문 바로가기

TIL (Today I Learned)/컴퓨터 시스템(CS)41

[CS] 가상 메모리 Memory Management #3 이 포스팅은 한국기술교육대학 김덕수 교수님의 강의를 참고하여 작성했습니다. #1 Memory Management Page와 같은 크기로 미리 분할하여 관리/사용 - Page frame - FPM 기법과 유사 Frame table - Page frame당 하나의 entry- 구성 : Allocated/available field PID fieldLink field(For free list, 사용가능 한 fp들을 연결)AV(Free list header, free list의 시작점) AV는 가장 처음으로 비어있는 entry를 지칭한다. link는 빈 entry에 대한 linked list를 만든다. #2 Page Sharing 여러 프로세스가 특정 page를 공유 가능 Non-continuous alloca.. 2022. 12. 1.
[CS] 가상 메모리 Paging System #2 이 포스팅은 한국기술교육대학 김덕수 교수님의 강의를 참고하여 작성했습니다. Virtual Storage Methods - Paging system - Segmentation system - Hybrid paging/segmentation system #1 Paging System 프로그램을 같은 크기의 블록으로 분할 ( Pages ) 블록을 페이지라고 부른다. Terminologies Page - 프로그램의 분할된 block Page frame 틀 - 메모리의 분할 영역 - Page와 같은 크기로 분할 특징 논리적 분할이 아님 (크기에 따른 분할) - Page 공유 (sharing) 및 보호 (protection) 과정이 복잡함 segmentation 대비 Simple and Efficient - Seg.. 2022. 12. 1.
[CS] 가상 메모리 VItual Storage (Memory) #1 이 포스팅은 한국기술교육대학 김덕수 교수님의 강의를 참고하여 작성했습니다. 해당 이론을 학습하기 전, 강의를 먼저 찾았다. https://hpclab.tistory.com/1 운영체제 강의 모음 (슬라이드 & YouTube 링크) * 모든 강의는 YouTube에서 보실 수 있습니다 [재생목록 링크] 1. Computer System Overview [Slides][Video] - What is OS? - Computer Hardware 2. OS Overview [Slides][Video] - Role of Operating System (OS) - Classification of OSs - OS Archite hpclab.tistory.com 위의 블로그는 한기대 김덕수 교수님이 운영중이신 블로그이다... 2022. 12. 1.
[CS] CS:APP #1 해당 포스트는 다음 서적을 참고하여 작성하였습니다. [컴퓨터 시스템(CS:APP) 제 3판, 퍼스트북] CHAPTER 1 컴퓨터 시스템을 배워야 하는 이유 (파워 프로그래머에게 필요한 역략) (1) C코드를 최적화하는 방법을 알게된다. (2) 컴파일러가 프로시저 호출을 어떻게 구현하는지 알게된다. (3) 버퍼 오버플로우 위험성으로부터 어떻게 시스템을 보호할 수 있는지 알게된다. (3) 링커 과정에서 발생하는 심각한 에러를 이해하고 회피하는 방법을 알게된다. (4) 유닉스 쉘, 동적 메모리 할당 패키지, 웹 서버를 작성하는 방법을 알게된다. (5) 멀티 프로레서 코어들이 한 개의 칩에 집적됨에 따라 동시성의 가능성과 위험성을 알게된다. 1.1 정보는 비트와 컨텍스트로 이루어진다. 오로지 아스키 문자들로만 .. 2022. 11. 30.
[CS] C언어 학습 사전 지식, 컴퓨터 시스템(CS)의 이해 이 문서는 홍정모님의 "따라하며 배우는 C언어" 강의를 참고하여 작성했습니다. C언어를 배우기 위해서는 컴퓨터 시스템에 대한 사전지식이 필요하다. 현재(22.11.30) 홍정모님의 유튜브에는 따라하며 배우는 C언어의 0챕터와 1챕터가 무료로 올라와있다. 컴퓨터 시스템에 대한 사전지식이 없는 비전공자일 경우 해당 영상으로도 충분한 도움이 될 것으로 생각한다. #1 컴퓨터의 구성 하드웨어 : 손으로 만질수 있는 모든 부분. (육체) 소프트웨어 : 순수한 정보. (정신) 1. 컴퓨터의 구성 요소들 메인보드 > 중앙 처리장치, 주 기억장치, 보조 기억장치, 전원 공급장치, 입출력 장치, 그래픽스 카드, 디스플레이 #2 부팅 절차 - 전원 공급 > 부트 프로그램 실행 > 하드웨어 검사 > 운영 체제 로드 > 운영.. 2022. 11. 30.