国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Linux服務器 > 正文

介紹Linux內核函數Start_kernel()的功能

2024-09-05 23:01:55
字體:
來源:轉載
供稿:網友

Start_kernel()中調用了一系列初始化函數,以完成kernel本身的設置。這些動作有的是公共的,有的則是需要配置的才會執行的。

  在start_kernel()函數中,

  輸出Linux版本信息(printk(linux_banner))

  設置與體系結構相關的環境(setup_arch())

  頁表結構初始化(paging_init())

  使用"arch/alpha/kernel/entry.S"中的入口點設置系統自陷入口(trap_init())

  使用alpha_mv結構和entry.S入口初始化系統IRQ(init_IRQ())

  核心進程調度器初始化(包括初始化幾個缺省的Bottom-half,sched_init())

  時間、定時器初始化(包括讀取CMOS時鐘、估測主頻、初始化定時器中斷等,time_init())

  提取并分析核心啟動參數(從環境變量中讀取參數,設置相應標志位等待處理,(parse_options())

  控制臺初始化(為輸出信息而先于PCI初始化,console_init())

  剖析器數據結構初始化(prof_buffer和prof_len變量)

  核心Cache初始化(描述Cache信息的Cache,kmem_cache_init())

  延遲校準(獲得時鐘jiffies與CPU主頻ticks的延遲,calibrate_delay())

  內存初始化(設置內存上下界和頁表項初始值,mem_init())

  創建和設置內部及通用cache("slab_cache",kmem_cache_sizes_init())

  創建uid taskcount SLAB cache("uid_cache",uidcache_init())

  創建文件cache("files_cache",filescache_init())

  創建目錄cache("dentry_cache",dcache_init())

  創建與虛存相關的cache("vm_area_struct","mm_struct",vma_init())

  塊設備讀寫緩沖區初始化(同時創建"buffer_head"cache用戶加速訪問,buffer_init())

  創建頁cache(內存頁hash表初始化,page_cache_init())

  創建信號隊列cache("signal_queue",signals_init())

  初始化內存inode表(inode_init())

  創建內存文件描述符表("filp_cache",file_table_init())

  檢查體系結構漏洞(對于alpha,此函數為空,check_bugs())

  SMP機器其余CPU(除當前引導CPU)初始化(對于沒有配置SMP的內核,此函數為空,smp_init())

  啟動init過程(創建第一個核心線程,調用init()函數,原執行序列調用cpu_idle() 等待調度,init())

  至此start_kernel()結束,基本的核心環境已經建立起來了。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 峨山| 忻州市| 罗城| 基隆市| 宁晋县| 横山县| 永平县| 襄城县| 盐源县| 乌拉特中旗| 盐山县| 通州区| 南和县| 柯坪县| 石家庄市| 鄂州市| 方正县| 广丰县| 天津市| 湖北省| 太仓市| 四川省| 台前县| 海城市| 云阳县| 远安县| 北海市| 两当县| 民和| 壶关县| 淮南市| 太保市| 阿克苏市| 平陆县| 凤翔县| 睢宁县| 永川市| 安顺市| 沙田区| 无为县| 东山县|