[커널 17차 6조] 3주차

2020.09.06 12:02

김정근 조회 수:388

iamroot kernel study 17기 6조 2주차


일시 : 2020.09.05 (토) 15:00 ~ 22:10


장소 : 온라인(Zoom)


참석자 : 김정근 정홍관 김수연 김지엽
이승원 조현일 홍은비 박준은 김태정


학습내용 : 
리눅스 커널 내부구조 
6. 인터럽트

7. 리눅스 모듈프로그래밍

8. 디바이스 드라이버

9. 네트워크

 


참고한 링크 :
 

마이크로 커널 vs 모노리틱 커널
https://web.archive.org/web/20190603110915/https://joone.net/2019/02/09/30-%EB%A6%AC%EB%88%85%EC%8A%A4-%EC%9D%B4%EC%95%BC%EA%B8%B0-%EB%A6%AC%EB%88%85%EC%8A%A4-vs-%EB%AF%B8%EB%8B%89%EC%8A%A4-1%EB%B6%80/

https://web.archive.org/web/20190603110702/https://joone.net/2019/05/26/31-%EB%A6%AC%EB%88%85%EC%8A%A4-%EC%9D%B4%EC%95%BC%EA%B8%B0-%EB%A6%AC%EB%88%85%EC%8A%A4-vs-%EB%AF%B8%EB%8B%89%EC%8A%A4-2%EB%B6%80/
 

https://tribal1012.tistory.com/154


https://d2.naver.com/helloworld/47667?nil_openapi=search

 

ARM coretex-A Series Programmer's Guide for ARMv8-A
https://developer.arm.com/documentation/den0024/a/preface


https://developer.arm.com/architectures/learn-the-architecture
 

 



참고한 커널 소스 코드 :

 

tbl 파일
https://elixir.bootlin.com/linux/v5.8.6/source/arch/x86/entry/syscalls/syscall_64.tbl


alloc_register_chrdev()
https://elixir.bootlin.com/linux/v5.8.6/source/fs/char_dev.c#L268


submit_bh()
ll_rw_block()
https://elixir.bootlin.com/linux/v5.8.6/source/fs/buffer.c#L3077


gendisk 구조체
hd_struct
block_device
https://elixir.bootlin.com/linux/v5.8.6/source/include/linux/genhd.h#L170
https://elixir.bootlin.com/linux/v5.8.6/source/include/linux/genhd.h#L54
https://elixir.bootlin.com/linux/v5.8.6/source/include/linux/fs.h#L476

 

struct bdev_inode {
    struct block_device bdev;
    struct inode vfs_inode;
};


https://elixir.bootlin.com/linux/v5.8.6/source/drivers/block/brd.c
 

dev_alloc_skb()
skb_copy_expand()
skb_clone()
https://elixir.bootlin.com/linux/v5.8.6/source/net/core/skbuff.c#L425
https://elixir.bootlin.com/linux/v5.8.6/source/net/core/skbuff.c#L1737
https://elixir.bootlin.com/linux/v5.8.6/source/net/core/skbuff.c#L1429


sys_write()
inset_sendmsg()
tcp_transmit_skb()
ip_queue_xmit()
https://elixir.bootlin.com/linux/v5.8.6/source/fs/read_write.c
https://elixir.bootlin.com/linux/v5.8.6/source/net/ipv4/af_inet.c#L807
https://elixir.bootlin.com/linux/v5.8.6/source/net/ipv4/tcp_output.c#L1080
https://elixir.bootlin.com/linux/v5.8.6/source/net/ipv4/ip_output.c#L451
 

sys_read()
inet_recvmsg()
sock_common_recvmsg()
tcp_recvmsg()
https://elixir.bootlin.com/linux/v5.8.6/source/fs/read_write.c#L596
https://elixir.bootlin.com/linux/v5.8.6/source/net/ipv4/af_inet.c#L835
https://elixir.bootlin.com/linux/v5.8.6/source/net/core/sock.c#L3260
https://elixir.bootlin.com/linux/v5.8.6/source/net/ipv4/tcp.c#L2015

XE Login