天天干天天操天天爱-天天干天天操天天操-天天干天天操天天插-天天干天天操天天干-天天干天天操天天摸

課程目錄:Embedded GNU/Linux Kernel Internals and Device Drivers培訓
4401 人關注
(78637/99817)
課程大綱:

  Embedded GNU/Linux Kernel Internals and Device Drivers培訓

 

 

 

Introduction
quick history of GNU/Linux
licensing
kernel versioning
release cycle
kernel trees
mainline
kernel vs. user space
mechanism vs. policy
kernel driver alternatives
RTOS vs. Linux
Memory Management
Virtual memory vs. physical memory
memory allocation in kernel
pages
zones
API
slab
Kernel Patch
life cycle
git
kernel source
create patch
check patch
fix patch
ship patch
audited code
Kernel Modules
get kernel sources
configure/build/install
device drivers (statically linked, loaded at runtime)
init/exit
licensing
EXPORT SYMBOL GPL
out of tree makefile
module-init-tools
module in kernel tree
Kconfig
parameter passing
sparse
Char Drivers
architecture
user/kernel interface
I/O subsystem
VFS
sysfs (devices, bus, drivers, classes),
kobject/ktype/kset
linux kernel driver model
device files
char driver
initialization
registration
open, release
cdev, cdev add, cdev del,...
major/minor numbers
udev, udevmonitor, udevadm
Advanced Charachter Driver Operations
ioctl
unlocked ioctl
compat ioctl
user space API
kernel space API
process lifecycle
sleeping/blocking
sleeping/waking up
wait queue
thundering herd
poll/select
Kernel Debugging
bug
debugging
debugging the kernel
binary search with git
debug support from kernel
printk syslogd, klogd, loglevels, rate limit, debug levels, debug selective subsystems
debugging by querying debugfs
oops debugging, asserting oops
Magic SysRq Key
kgdb/kdb
JTAG
Tracing
gcov
lcov
oprofile
ftrace
nop tracer
function tracer
sched switch tracer
function graph tracer
dynamic tracer
trace-cmd/kernelshark
perf
LTTng
Interrupts
interrupts vs. polling
interrupt
program sections
reentrancy
events
interrupt handler
shared interrupt handler
interrupt flow
interrupt control
Deferring Work
top/bottom halves
softirqs
tasklets
work queues
threaded interrrupts
Concurrency
critical region/section
atomic
race condition
synchronization
locking
locking solutions
deadlock
contention
what to lock?
what can be used?
atomic operations
spin locks
reader-writer spin locks
semaphore
binary semaphore
mutex
reader-writer semaphore
completion variables
sequential locks
disable preemption
orderig and barriers
Time
HZ
Jiffies
big/small delays
kernel timers
Hardware I/O
I/O Ports
I/O Memory
How to deal with side effects accessing registers?
User-Kernel Communication
put(get)_user()
copy to(from)_user()
Kernel I/O
memory mapping
procfs
sysfs
debugfs
relayfs
netlink
ioctl
Portability
word size
opaque types
signed/unsigned char
data alignment
integral promotion
code reuse
endianess
system tick
page size
instruction ordering
SMP/preemption/high memory
Except where otherwise noted content and this course outline are licensed under Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).

主站蜘蛛池模板: 亚洲色图图片 | 国产综合久久一区二区三区 | 国产精品亚洲综合色拍 | 日韩一级免费视频 | 三级毛片在线看 | 在线观看网 | aaa级毛片| 欧美三级黄色大片 | 亚洲国产精品aa在线看 | 一极黄色片 | 色片在线免费观看 | 中文免费观看视频网站 | 亚洲 欧美 另类 综合 日韩 | 国产成人yy精品1024在线 | 一级特黄高清完整大片 | 亚洲综合伊人制服丝袜美腿 | 日本h片a毛片在线播放 | 91美女视频在线 | 国产在线日韩 | 狠狠色丁婷婷综合久久 | 亚洲 日本 欧美 日韩精品 | 特黄特黄一级高清免费大片 | 久久www免费人成看片色多多 | 欧美色图影院 | 国产成人夜色91 | 91视频免费播放 | 小明www永久在线看 小明www永久免费播放平台 | 亚洲欧洲无码一区二区三区 | 99久久www免费 | 国产成人精品999在线观看 | 久久久久国产一级毛片高清板 | 亚洲一区二区黄色 | 国产日产欧美一区二区三区 | 免费播放美女一级毛片 | 亚洲国产一区二区三区a毛片 | 色播在线永久免费视频网站 | 视频在线观看91 | 嘿嘿视频在线观看 成人 | 国产美女主播在线观看 | 800av在线视频| 亚洲一区二区三 |