We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
p114 ~ p163
한시간씩 진행 (50분 진행 / 10분 휴식) 15:00 - 18:00 18:00 - 19:00 휴식 19:00 - 21:30 21:30 - 22:00 정리 & 다음주 진도 계획 이번주 진도 p70~p114
task_uninterruptible vs task_killable : signal https://stackoverflow.com/questions/767551/how-to-stop-uninterruptible-process-on-linux
signal
current task level ? cs register 의 최하위 비트 2개 = 권한, ring CPL DPL https://en.wikipedia.org/wiki/X86_memory_segmentation user level = 0b11 kernel level = 0b00
ring
CPL
DPL
interrupt vs trap vs signal https://en.wikipedia.org/wiki/Trap_(computing) https://stackoverflow.com/questions/13341870/signals-and-interrupts-a-comparison trap = syscall, breakpoint, cpu에 의도된 멈춤? 전달? interrupt = exception, divide by zero, page fault. cpu 에 의도되지 않은 멈춤? signal = OS kernel <-> process 하나의 통신. ipc일종 https://en.wikipedia.org/wiki/Signal_(IPC)
union keyword in c 멤버 변수간 메모리 공간 공유 https://m.blog.naver.com/PostView.nhn?blogId=imbin_&logNo=221330417695&proxyReferer=https:%2F%2Fwww.google.com%2F
x86 calling convention :: system call eax에 시스템콜 번호를 넣고 int $0x80을 호출한다. https://stackoverflow.com/questions/47692516/what-is-the-use-of-eax-register-in-the-context-of-system-calls-in-linux
eax
int $0x80
sched_domain sched_group 을 하드웨어적 특성에 따라 분류. https://www.kernel.org/doc/html/latest/scheduler/sched-domains.html https://stackoverflow.com/questions/14229793/what-does-struct-sched-domain-stands-for-in-include-linux-sched-h-scheduling-do http://jake.dothome.co.kr/sched-domain/
RT 스케줄러 SCHED_FIFO, SCHED_RR http://jake.dothome.co.kr/rt-scheduler/
SCHED_FIFO
SCHED_RR
일반 스케줄러 CFS (completely fair scheduler) vruntime Time Slice http://jake.dothome.co.kr/cfs/
CFS (completely fair scheduler)
vruntime
Time Slice
Context, 문맥 registers pc ebx ..
registers
pc
ebx
SMP vs AMP SMP = 요즘 일반적인 cpu AMP = arm bit.LITTLE cpu https://blogs.sw.siemens.com/embedded-software/2010/06/07/amp-vs-smp/
32bit -> 2^32 = 2^2 * (2^10)^3 = 4 * 1e9 => 4GB
물리 메모리 노드 > 존 > 페이지. NUMA = 복수의 노드 존재. 존 종류 : ZONE_DMA, ZONE_NORMAL ... http://jake.dothome.co.kr/zone-types/ Buddy 큰 사이즈 Slab 작은사이즈 cache http://jake.dothome.co.kr/buddy-alloc/ http://jake.dothome.co.kr/slub/
큰 사이즈
작은사이즈
cache
가상메모리 task_struct > mm_struct > vm_area_struct cat /proc/self/maps MMAP(2) MAP_ANONYMOUS MAP_SHARED MAP_PRIVATE https://man7.org/linux/man-pages/man2/mmap.2.html
MAP_ANONYMOUS
MAP_SHARED
MAP_PRIVATE
The text was updated successfully, but these errors were encountered:
No branches or pull requests
다음주 진도계획
p114 ~ p163
time schedule
한시간씩 진행 (50분 진행 / 10분 휴식)
15:00 - 18:00
18:00 - 19:00 휴식
19:00 - 21:30
21:30 - 22:00 정리 & 다음주 진도 계획
이번주 진도 p70~p114
ch3. 테스크 관리 :: 6.상태 전이
task_uninterruptible vs task_killable :
signal
https://stackoverflow.com/questions/767551/how-to-stop-uninterruptible-process-on-linux
current task level ?
cs register 의 최하위 비트 2개 = 권한,
ring
CPL
DPL
https://en.wikipedia.org/wiki/X86_memory_segmentation
user level = 0b11
kernel level = 0b00
interrupt vs trap vs signal
https://en.wikipedia.org/wiki/Trap_(computing)
https://stackoverflow.com/questions/13341870/signals-and-interrupts-a-comparison
trap = syscall, breakpoint, cpu에 의도된 멈춤? 전달?
interrupt = exception, divide by zero, page fault. cpu 에 의도되지 않은 멈춤?
signal = OS kernel <-> process 하나의 통신. ipc일종
https://en.wikipedia.org/wiki/Signal_(IPC)
union keyword in c
멤버 변수간 메모리 공간 공유
https://m.blog.naver.com/PostView.nhn?blogId=imbin_&logNo=221330417695&proxyReferer=https:%2F%2Fwww.google.com%2F
x86 calling convention :: system call
eax
에 시스템콜 번호를 넣고int $0x80
을 호출한다.https://stackoverflow.com/questions/47692516/what-is-the-use-of-eax-register-in-the-context-of-system-calls-in-linux
sched_domain
sched_group 을 하드웨어적 특성에 따라 분류.
https://www.kernel.org/doc/html/latest/scheduler/sched-domains.html
https://stackoverflow.com/questions/14229793/what-does-struct-sched-domain-stands-for-in-include-linux-sched-h-scheduling-do
http://jake.dothome.co.kr/sched-domain/
RT 스케줄러
SCHED_FIFO
,SCHED_RR
http://jake.dothome.co.kr/rt-scheduler/
일반 스케줄러
CFS (completely fair scheduler)
vruntime
Time Slice
http://jake.dothome.co.kr/cfs/
Context, 문맥
registers
pc
ebx
..SMP vs AMP
SMP = 요즘 일반적인 cpu
AMP = arm bit.LITTLE cpu
https://blogs.sw.siemens.com/embedded-software/2010/06/07/amp-vs-smp/
ch4. 메모리 관리
32bit -> 2^32 = 2^2 * (2^10)^3 = 4 * 1e9 => 4GB
물리 메모리
노드 > 존 > 페이지.
NUMA = 복수의 노드 존재.
존 종류 : ZONE_DMA, ZONE_NORMAL ...
http://jake.dothome.co.kr/zone-types/
Buddy
큰 사이즈
Slab
작은사이즈
cache
http://jake.dothome.co.kr/buddy-alloc/
http://jake.dothome.co.kr/slub/
가상메모리
task_struct > mm_struct > vm_area_struct
cat /proc/self/maps
MMAP(2)
MAP_ANONYMOUS
MAP_SHARED
MAP_PRIVATE
https://man7.org/linux/man-pages/man2/mmap.2.html
The text was updated successfully, but these errors were encountered: