[我所知道的BIOS]->[Remaining POST Tasks] 11
来源:互联网 发布:地形图矢量化软件 编辑:程序博客网 时间:2024/05/21 05:08
转自:http://biosengineer.blogspot.com/2007/10/bios-remaining-post-tasks-11.html
除了之前所提的 tasks外,還有下列 main tasks是 BIOS POST會執行的:
[USB init]
=> initialize USB的部份.這方面的code幾乎是 kernel code,再加上少許的 chipset code(因為,chipset's USB controller是哪一種需要 customize, Ex. OHCI or UHCI...etc).
主要在 implement USB spec的部份(USB 1.1/2.0 and USB legacy). (天書也...沒看過...)
[KB init]
=> init KBC的部份
[HDD init]
=> 這是 locate IPL(Initial Program Load)的code.因為最終系統需要 load OS,而OS是存在 storage device中,因此需要讓storage....動起來 !
主要的工作有:
- 設定 chipset端的 storage controller(PATA or SATA)'s settings
- identify HDD
- config HDD by set-feature(<-設定 device端的 settings)
這樣一來,controller端與 device端有了 "相同的認知" 後,就可以 access HDD了 !
[ACPI]
=> 主要是將所有的 ACPI tables建至 memory中;讓ACPI OS可以 parse & config.
[Boot-to-OS]
=> 最後 BIOS's 工作是: invoke int19h(for Boot-strap) !此中斷服務程式會嘗試去找 boot device,並從中(storage)將 boot-loader 載入至 memory中;然後跳到 boot loader處,開始執行載入OS的工作 !
* 一但進入OS後,與BIOS會有關的....幾乎只剩 ACPI 了 !
BIOS不是雞肋 ^_^
[USB init]
=> initialize USB的部份.這方面的code幾乎是 kernel code,再加上少許的 chipset code(因為,chipset's USB controller是哪一種需要 customize, Ex. OHCI or UHCI...etc).
主要在 implement USB spec的部份(USB 1.1/2.0 and USB legacy). (天書也...沒看過...)
[KB init]
=> init KBC的部份
[HDD init]
=> 這是 locate IPL(Initial Program Load)的code.因為最終系統需要 load OS,而OS是存在 storage device中,因此需要讓storage....動起來 !
主要的工作有:
- 設定 chipset端的 storage controller(PATA or SATA)'s settings
- identify HDD
- config HDD by set-feature(<-設定 device端的 settings)
這樣一來,controller端與 device端有了 "相同的認知" 後,就可以 access HDD了 !
[ACPI]
=> 主要是將所有的 ACPI tables建至 memory中;讓ACPI OS可以 parse & config.
[Boot-to-OS]
=> 最後 BIOS's 工作是: invoke int19h(for Boot-strap) !此中斷服務程式會嘗試去找 boot device,並從中(storage)將 boot-loader 載入至 memory中;然後跳到 boot loader處,開始執行載入OS的工作 !
* 一但進入OS後,與BIOS會有關的....幾乎只剩 ACPI 了 !
BIOS不是雞肋 ^_^
0 0
- [我所知道的BIOS]->[Remaining POST Tasks] 11
- [我所知道的BIOS]->[Remaining POST Tasks] 11
- [我所知道的BIOS]->[系統架構] 2
- [我所知道的BIOS]->[Jumpless] 4
- [我所知道的BIOS]->[Shadowing] 8
- [我所知道的BIOS]->[PCI SCAN]
- [我所知道的BIOS]->[系統架構] 2
- [我所知道的BIOS]->[Jumpless] 4
- [我所知道的BIOS]->[Shadowing] 8
- [我所知道的BIOS]->[PowerOn Sequence & BIOS Entry] 3
- [我所知道的BIOS]->[PowerOn Sequence & BIOS Entry] 3
- [我所知道的BIOS]->[Chipset Config] 5
- [我所知道的BIOS]->[DRAM Sizing] (1) 7
- [我所知道的BIOS]->[PCI SCAN] 9
- [我所知道的BIOS]->[VGA init] 10
- [我所知道的BIOS]->[Chipset Config] 5
- [我所知道的BIOS]->[DRAM Sizing] (1) 7
- [我所知道的BIOS]->[PCI SCAN] 9
- springMVC 拦截器的两种实现方式
- php面向对象基础:1.类和方法
- NOIP 2011 表达式的值
- Android6.0_r9 CTS 测试 一
- linux 命令2
- [我所知道的BIOS]->[Remaining POST Tasks] 11
- 运算符优先级
- Linux 内核 Starting kernel ... 串口无输出问题归纳总结
- tolua学习资料汇总贴
- 【LeetCode】3Sum,3Sum Closest 题解报告
- mysql merge
- Quartz配合Spring使用的一种方法
- NOIP 2005 等价表达式
- LeetCode No145 Binary Tree Postorder Traversal
4 意見:
上班時間只能大概看了一下您的大作.
說真的..看了實在是很感動..
弟剛誇進來這個領域一個月..
很多東西都不甚了解..有機會..
真的希望可以好好請教一下..
嗯..晚上再上來看囉..
謝謝您的大力分享心得..
歡迎你加入這個行業,有問題大家在互相討論吧^^
想問你你在程式俱樂部問過的問題說~
有關IO TRAP中Phoenix services的方法
還有到底啥叫Phoenix services?
有TOPIC可以看嗎,跟INTEL的方式有什麼差別呢~CODE跟PATH都TRACE過了,想知道理論一點的東西說~
MNS:chagigi@msn.com
大大,請問您對USB部份的了解有多深?
想要在DOS 下去驅動USB Device,但對Host端的Program 沒什麼Idea..
可否給些建議?