1.2.2 核心 kernel 目錄
從編譯檔 linux/kernel/Makefile,我們可以得到 kernel 的程式檔群和目錄群。
這些編譯檔群會編譯成該目錄的 built_in.o,再連結到 linux/vmlinux.o,最後成為 linux/vmlinux。
下表是筆者將編譯檔內有效的描述記錄起來的結果。
編譯檔的環境變數都設定在組態檔 linux/include/generated/autoconf.h。
從編譯檔取得 LINUX 核心 kernel/ 程式碼目的檔群,進而取得原始程式碼檔案列表。
目錄 kernel/irq:
從編譯檔 linux/kernel/irq/Makefile 取得 LINUX 核心 kernel/irq/ 程式碼目的檔群,進而取得原始程式碼檔案列表。
目錄 kernel/events:
從編譯檔 linux/kernel/events/Makefile 取得 LINUX 核心 kernel/events/ 程式碼目的檔群,進而取得原始程式碼檔案列表。
目錄 kernel/trace:
從編譯檔 linux/kernel/trace/Makefile 取得 LINUX 核心 kernel/trace/ 程式碼目的檔群,進而取得原始程式碼檔案列表。
目錄 kernel/power:
從編譯檔 linux/kernel/power/Makefile 取得 LINUX 核心 kernel/power/ 程式碼目的檔群,進而取得原始程式碼檔案列表。
目錄 kernel/time:
從編譯檔 linux/kernel/time/Makefile 取得 LINUX 核心 kernel/time/ 程式碼目的檔群,進而取得原始程式碼檔案列表。
核心 kernel 目錄的結論:
目錄 | 目的檔群 |
kernel |
sched.c、fork.c、exec_domain.c、panic.c、printk.c、cpu.c、exit.c、
itimer.c、time.c、softirq.c、resource.c、sysctl.c、sysctl_binary.c、
capability.c、ptrace.c、timer.c、user.c、signal.c、sys.c、kmod.c、
workqueue.c、pid.c、rcupdate.c、extable.c、params.c、posix-timers.c、
kthread.c、wait.c、kfifo.c、sys_ni.c、posix-cpu-timers.c、mutex.c
hrtimer.c、rwsem.c、nsproxy.c、srcu.c、semaphore.c、notifier.c、
ksysfs.c、pm_qos_params.c、sched_clock.c、cred.c、async.c、range.c、
jump_label.c、groups.c、freezer.c、profile.c、sysctl_check.c、
stacktrace.c、futex.c、rtmutex.c、dma.c、smp.c、spinlock.c、uid16.c、
module.c、kallsyms.c、acct.c、kexec.c、cgroup.c、cgroup_freezer.c、
cpuset.c、utsname.c、user_namespace.c、pid_namespace.c、res_counter.c、
stop_machine.c、audit.c、auditfilter.c、auditsc.c、audit_watch.c、
audit_tree.c、kprobes.c、seccomp.c、rcutree.c、relay.c、utsname_sysctl.c、
delayacct.c、taskstats.c、tsacct.c、tracepoint.c、elfcore.c、
sched_cpupri.c、irq_work.c、crash_dump.c。 |
kernel/irq |
irqdesc.c、handle.c、manage.c、spurious.c、resend.c、chip.c、dummychip.c、
devres.c、autoprobe.c、proc.c、migration.c、pm.c。 |
kernel/events |
core.c、hw_breakpoint.c。 |
kernel/trace |
trace_clock.c、ring_buffer.c、trace.c、trace_output.c、trace_stat.c、
trace_printk.c、trace_sched_switch.c、trace_nop.c、blktrace.c、
trace_events.c、trace_export.c、trace_event_perf.c、
trace_events_filter.c、trace_kprobe.c、power-traces.c。 |
kernel/power |
main.c、console.c、process.c、suspend.c、hibernate.c、snapshot.c、
swap.c、user.c、block_io.c、poweroff.c。 |
kernel/time |
timekeeping.c、ntp.c、clocksource.c、jiffies.c、timer_list.c、timecompare.c
timeconv.c、posix-clock.c、alarmtimer.c、clockevents.c、tick-common.c、tick-broadcast.c
tick-oneshot.c、tick-sched.c、timer_stats.c。 |
|