




已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
Linux內核分析和應用技術 林豐波linfb 2005 3 ToC LinuxKernel介紹源代碼目錄結構學習Linux內核推薦討論主題 LinuxKernel 內核源代碼 2 6 10 bz2壓縮有40M 展開有200M約16k個文件 編譯后可壓縮為約1M的核心 vmlinuz 及幾十M的驅動文件 在開機啟動運行后 內核提供了200多個系統(tǒng)調用 這是內核和用戶進程交互的接口 內核管理CPU 存儲器 外設及進程調度等 內核功能可以在運行過程中以內核模塊 kernelmodule 的方式得以擴充 LinuxKernel Kernel和Distributionminix LinuxKernel GNU LinuxAndrewS Tanenbaum1987LinusTorvalds1991RichardStallman1983Linuxwww kernel orgwww linux orgwww tldp orglxr linux no Linux功能 兼容unix符合IEEEPOSIX 1多用戶環(huán)境多進程進程調度SMP進程間通信IPC Pipe Socket網(wǎng)絡支持TCP IPv4 IPv6 各種硬件平臺支持CPUs存儲管理內存管理磁盤交換空間高速緩存文件系統(tǒng)VFSext2 ext3 FAT NTFS ISO9660動態(tài)和共享庫 特色 特色Unix like可靠性性能移植性Open開發(fā)工作活躍性價比硬件要求低可為我所用 前景和趨勢服務器領域桌面嵌入式商業(yè)化cn 支持動態(tài)內核模塊SMP線程支持一個線程實體對應一個核心輕量級進程拋棄了某些Unix特性內核可被搶占 preemptive in2 6 CPUs x86Intel AMD Cyrix Winchip Rise 32Itanium AMD 64alphaCompaqppcAIM Apple IBM Motorola sparcSunmipsMIPS 龍芯 LinusTorvalds 1991年Minix LinuxAndrewS TanenbaumOpenSourceLinuxisobsolete MICROKERNELVSMONOLITHICSYSTEMPORTABILITYhttp www2 educ umu se bjorn mhonarc files obsolete index htmlPenguin Linux版本經(jīng)歷 主要版本0 0191 80 0291 100 99 Slackware93 111 094 3FREEAlpha版95 6 2 299 1GNU2 401 12 603 12 LinuxKernel版本號 X Y ZY是偶數(shù)的是穩(wěn)定版Z是修訂號當前穩(wěn)定版是2 6 10 2005 2 開發(fā)版是SCOvs IBMLinuxlawsuithttp www wikipedia org wiki SCO v IBM Linux lawsuit LinesofCode 0109 19917 5K 1 003 1994158K 1 203 1995277K 2 007 1996649K 2 201 19991536K 2 401 20012888K 2 612 2003 4200K 2 4改進功能 關于進程上限和并發(fā)調度的改進支持更大的內存改經(jīng)SMP支持支持新的處理器TransmetaCrusoe 3ComPalmPilot Psion5 新的文件系統(tǒng)支持Java解釋器khttpd LinuxKernel2 6 FeatureFreeze Halloween2002 BetterPerformance EspeciallyonSMP BetterScalability BetterI OSubsystem NewFilesystems ManyNewHardwareDrivers NewPlatforms ManyFeaturesTestedas2 4Patches 2 6改進特性 多平臺支持嵌入式 cuLinux non mmu AMD64字段寬度地址 pid內存管理NUMA Non UniformMemoryAccess 進程調度從O n 到O 1 交互響應性能自身是可搶占的設備模塊特性網(wǎng)絡特性安全特性 內核服務接口 系統(tǒng)調用 爭論單一內核monolithic微內核microkernel內核功能和服務系統(tǒng)調用中斷處理系統(tǒng)調用 系統(tǒng)調用 用戶模式和內核模式 SystemCalli 訪問設備 sys read i 3 system call i 訪問內部函數(shù) read j 20 system call j get pid SystemCallj 訪問內核數(shù)據(jù)結構 sys getpid KernelSourceCode LXRhttp lxr linux no Kernelsourcedir 環(huán)境準備 LXR0 3 1 LinuxCrossReferencerlxr 0 3 1 tar gzDependonWebserver Apacheperl5glimpseInstall LXRdependson links exuberantctags glimpse GlimpseisthepowerfulindexingandquerysysteminsideofWebglimpse whichisafeature richsearchenginethathasbeenusedonthousandsofsites http glimpse cs arizona edu installshconfigure or configure makemakeinstall LXR0 3 1 LXRCrossReferencerlxr 0 3 1 tar gzFunctionLinuxsourcecrossreferenceURLhttp lxr linux no lxr 0 3 1 tarzxflxr 0 3 1 tar gzcd modify makefile INSTALLPREFIX tmp lxr var www html lxr makeinstallmodify var www html lxr httpd lxr conf Sourceroot usr src linux create htaccess genxref usr src linux 實踐筆記 請實踐并完善 Linux內核 系統(tǒng)啟動和初始化arch i386 kernel Sinit main c內存管理mm內核 進程調度arch kernelkernel sched ckernel fork cinclude linux interrupt hinclude linux sched h PCIdrivers pci pci cinclude linux pci h進程間通信ipc中斷處理arch i386 kernel irq cinclude asm i386 irq h設備驅動blockcharcdrom 文件系統(tǒng)fs buffer cfs ext2 include linux ext2 fs hext2 fs i hext2 fs sb hinclude linux fs h 網(wǎng)絡實現(xiàn)netinclude netnet socket cnet ipv4 af inet cnet corenet ipv4drivers net 模塊編程kernel modules cinclude linux module hinclude linux kerneld hinclude linux elf h其他 Kernel目錄結構 啟動和初始化不同CPU支持設備文件系統(tǒng)驅動程序進程間通信內存管理網(wǎng)絡其他 copying makefile readmeDocument比如pci txtarch比如i386 ia64 ppc sparc等目錄drivers各種驅動 很多目錄如cdrom usb sound netfs文件系統(tǒng) VFS支持 比如ext2 fat等目錄include平臺無關的在linux目錄平臺相關在asm i386 asm ia64 asm ppc等目錄initmain c start kernel version c ipc進程間通信msg c msgsndmsgrcv sem c semaphore旗語 shm ckernel核心 調度sched c最重要lib核心常用代碼 errno string函數(shù) btree等mm硬件平臺無關的內存管理net核心內網(wǎng)絡協(xié)議代碼 如ipv4 ipv6 ipx atm bluetooth等scripts配置腳本文件 學習線索 以執(zhí)行流程為線索啟動和初始化POSTbootsect S setup S head S main c start kernel cpu idle init中斷structdesc structidt table 256 進程調度voidschedule void 以數(shù)據(jù)結構為線索list head 如不同的進程隊列hash 如structtask struct pidhash PIDHASH SZ 配合 pidhash next和 pidhash pprev以PCB為中心進程調度 sched cgoodness 和schedule vm areastructvm area struct 以功能劃分各模塊為線索進程調度文件操作和文件系統(tǒng)能夠網(wǎng)絡ethernet IP SocketIPCMMdrivers 開發(fā)驅動程序設計硬件接口參照一個樣本LDDv1 v2 v3 開始動手 瀏覽源碼http lxr linux no source 推薦討論主題 Linux編程概論C C gcc特性 調試gdbAssemblyasgccnasmmakemake cvs autoconf automake 硬件IA32 體系 內存管理 特權級 中斷機制 指令手冊IA64 新的體系和區(qū)別LinuxonIA64http www linuxia64 org Linux網(wǎng)絡程序設計socket后臺守護進程daemon Linux守護進程的編程方法 fork inittab被xinetd調用的進程的編程方法packetcapture promiscuousmode libpcap winpcap tcpdump windump etherealLinux模塊內核增強設備驅動 內核變量調控 proc proc sys kernelsysctl a系統(tǒng)調用竄改 監(jiān)視增強調度一般原理多CPU支持 文件系統(tǒng)分區(qū)加密網(wǎng)絡實現(xiàn)IPv4 IPv6ipchain iptablefilter org 內核新方向新進展?jié)h化問題見解內核之爭 其他有意義主題Linux公司的經(jīng)營模式Free Open軟件的再應用提交可以以作業(yè)報告形式提交也可以在課堂大家討論 LinuxKernel 循序漸進題目系列 ppt 綜合設計 例子 一個設想的設備驅動 設備驅動定義硬件設備設備功能 數(shù)據(jù)處理 采集 加解密 網(wǎng)絡 WatchDog 設備接口IO口 中斷號 共享內存設備操作規(guī)程時序定義驅動對上層接口打開 關閉操作 命令 響應 輸入 輸出找一個參照例子 Links TheLinuxKernelHOWTOhttp www tldp org HOWTO Kernel HOWTO htmlLILO LinuxCrashRescueHOW TOhttp www tldp org HOWTO LILO crash rescue HOWTO htmlGRUBhttp www gnu org software grub TLDPhttp w
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年計算機控制試題
- 跨文化管理視域下婚禮策劃團隊協(xié)作模式創(chuàng)新-洞察闡釋
- 重慶綠氫生產(chǎn)線項目可行性研究報告(參考模板)
- 鄉(xiāng)村振興與水稻產(chǎn)業(yè)升級的互動分析
- 2025至2030年中國甘草霜行業(yè)投資前景及策略咨詢報告
- 加強基層勞動管理與服務隊伍的能力建設
- 2025至2030年中國煙管式燃油蒸汽鍋爐行業(yè)投資前景及策略咨詢報告
- 2025至2030年中國火災逃生披行業(yè)投資前景及策略咨詢報告
- 2025至2030年中國注射用米力農行業(yè)投資前景及策略咨詢報告
- 2025至2030年中國水面旋轉盤行業(yè)投資前景及策略咨詢報告
- 《財務管理學(第10版)》課件 第9、10章 短期資產(chǎn)管理、短期籌資管理
- 天津市2024年中考英語真題【附真題答案】
- 平凡的世界(閱讀任務三 品味小說語言)教學設計-【中職專用】高一語文(高教版2023基礎模塊上冊)
- 2024年遼寧省中考化學試卷(含答案)
- (完整版)工匠精神課件
- 國開(浙江)2024年《領導科學與藝術》形成性考核作業(yè)1-4答案
- 零售藥店藥品驗收知識培訓試題
- 江蘇省南京市棲霞區(qū)2023-2024學年四年級下學期期末檢測語文試卷
- 女方凈身出戶離婚協(xié)議書的范文
- 產(chǎn)品生產(chǎn)保密協(xié)議代加工保密協(xié)議
- 2024春期國開本科《混凝土結構設計原理》形考作業(yè)1至4試題及答案
評論
0/150
提交評論