코딩코딩81 [번역] 왜 caller-saved와 callee-saved가 필요할까? 보호되어 있는 글 입니다. 2022. 6. 5. 내가 우분투로 바꾸고 설정한 것들 보호되어 있는 글 입니다. 2022. 6. 5. Paging, MLP4, Linux 페이징 선형적인 가상 주소 -> 실제 물리주소로 번역해주는 메커니즘 페이징 모드에는 3가지가 있다. (1) 32비트 페이징, (2) PAE 페이징, (3) IA-32e 페이징 우리가 살펴볼 건 IA-32e 페이징 (활성화를 위해 CR0.pg, CR4.PAE, IA32_EFER.LME 비트 설정 필요) Paging structures 페이징은 선형 주소 공간을 일정한 사이즈(4096, 4kb in x86_64)로 나누는 건데, 물리 주소 공간이나 외부 저장소에 매핑될 수 있다. x86-64 linux의 모든 structures는 4096의 사이즈와 512개의 entry로 이루어져있다. 리눅스는 계층을 갖는 4 level의 페이지를 사용한다. cr3에 최상단 레벨의 주소가 적혀있다. page table을 만들고 최.. 2022. 6. 1. kernel_of_linux Terminology Kernel: Unix 메모리에 상주(memory resident)하는 C 프로그램 Utility: command라고도 불리며 디스크에 저장되어 있고 필요할 대 마다 불러옴(loaded on demand) Shell: Unix interface to user, read keyboard input & execute command file: sequence of bytes, I/O나 통신을 위한 소켓들도 모두 파일이다. How Kernel-Shell-Untilities are related 커널 - 쉘 - 사용자 프로그램의 계층구조 시스템콜 유저가 write같은 시스템콜을 요청 int $0x80이 HW 트랩을 발생시킴 HW가 CPU의 모드를 user->kernel로 변경 HW가 trap.. 2022. 5. 30. 이전 1 2 3 4 5 6 7 ··· 21 다음