Linux acpi off學習的必要
ACPI的內容龐雜,學習ACPI至少可以幫助我們理解配置資訊。這些資訊從legacy PNP裝置的配置,到多處理器,到NUMA,比如現在的Multiple Core的資訊就只能從ACPI得到。Linux啟動很多程式碼就是處理這些配置資訊,比如Linux acpi off,IOAPIC設定等。
ACPI相關裝置。主要是膝上型電腦相關的裝置,包括電源按鈕,電池,外接電源,風扇,熱鍵等。
底層硬體。比如PCI中斷路由,chipset(主要是南橋PCI-to-LPC bridge)操作等。
電源管理。ACPI定義的電源管理包括CPU的電源管理(調頻率P-state,idle C-state,throtting
T-state),裝置電源管理(D-state),系統電源管理(Suspend-to-Ram, Suspend-to-Disk, power
off)等。
裝置熱插拔。ACPI用一種統一的方式來描述裝置的熱插拔,這樣的裝置從單一的PCI裝置,到膝上型電腦的Docking Station,到整個PCI hierarchy,CPU,Memory,甚至整個NUMA節點。
可以說要理解現代PC平臺必須瞭解ACPI。
Linux acpi off解決ACPI問題的小竅門
首先可以看看是否這是一個regression,如果以前版本的Linux
kernel可以工作,但新的不行,則是一個regression,可以測試不同的kernel從而找出哪個版本引入了bug。使用git-bisect
是一個好的選擇,它可以幫你定位到哪個patch導致了regression。一些git-bisect相關的資料如下:
Linux acpi off系統不能啟動
試試kernel引數”acpi=off”,如果此引數沒有帶來任何改變,那麼這不是一個ACPI bug。反之,則這很可能是一個ACPI bug。 確定了是一個ACPI bug後,我們還有其他一些引數來更進一步的區分到底是ACPI哪個部分的bug。
acpi=ht
這個引數和"acpi=off"幾乎一樣,它禁止了除多處理器配置相關的內容以外的所有ACPI功能。如果acpi=off正常,但acpi=ht 不正常, 則解析ACPI 表或者Linux SMP的程式碼有bug.
pci=noacpi
禁止使用ACPI來處理任何PCI相關的內容,包括PCI root bus的列舉和PCI裝置中斷路由。
acpi=noirq
禁止使用ACPI來處理PCI裝置中斷路由,和pci=noacpi的區別是它允許使用ACPI來列舉PCI root bus.
pnpacpi=off
禁止使用ACPI來列舉PNP裝置,比如串列埠、PS2鍵盤滑鼠等。
noapic
禁止使用io-apic來做裝置中斷路由,這樣做的效果之一是ACPI返回的中斷路由表將是針對PIC(8259)的。
nolapic
禁止使用Local-APIC和IO-APIC。
Linux acpi off裝置中斷相關的問題
出現中斷問題的可能性很多,比如驅動程式有bug。由ACPI導致的最常見的中斷問題是kernel打出:”irqXX: nobody
cared!”。這意味著kernel收到一箇中斷,但是沒有驅動程式來處理此中斷。Kernel會將此中斷禁止,從而導致掛在此中斷上的所有裝置都停止
工作。pci=noacpi, acpi=noirq, pnpacpi=off, noapic,
nolapic這些引數可以幫助隔離一些問題。另外一個有用的引數是”irqpoll”,出現上面的中斷問題時,它可以使kernel自動探測哪個裝置發
出了中斷。這個引數對於除錯那些中斷路由有問題的系統很有用。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26250550/viewspace-1978816/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 學習Linux務必要打好基礎Linux
- 學習linux有必要參加培訓嗎Linux
- 國產化大趨勢下學習linux的必要性Linux
- Unlink學習筆記(off-by-one null byte漏洞利用)筆記Null
- 機器學習中那些必要又困惑的數學知識機器學習
- 掌握Linux技能的學習方法有什麼?Linux學習Linux
- 怎樣系統的學習linux?Linux學習路線!Linux
- linux less的學習Linux
- 學習Python的幾個必要條件,你具備嗎?Python
- ArchLinux出現ACPI ERROR的解決方法LinuxError
- 學習Linux技術能獲的什麼技能?Linux學習Linux
- Linux該如何學習呢?Linux學習分享!Linux
- 學習Python真的有必要參加培訓嗎?Python
- python 有必要學習非同步程式設計嗎?Python非同步程式設計
- 長沙前端培訓有必要學習webpack嗎?前端Web
- nginx -g "daemon off;" 你學廢了嗎?Nginx
- 【Linux學習教程】學Linux到底是學的什麼?Linux
- 大資料學習的必要性,讓你走向時代前沿!大資料
- Linux運維需要持續學習嗎?Linux學習Linux運維
- Linux| |對於UDP的學習LinuxUDP
- 我的 Linux 故事:在 90 年代學習 LinuxLinux
- Linux學習之linux的find命令如何使用?Linux
- 如何學習LinuxLinux
- Linux 命令學習Linux
- Linux 學習概述Linux
- Linux學習心得Linux
- Linux學習04Linux
- Linux學習之旅Linux
- linux sed學習Linux
- 學習Linux哪個比較好?入門學習LinuxLinux
- 高中程度可以學習Linux嗎?Linux運維學習Linux運維
- 為什麼要學習Linux?如何學習Linux技術?Linux
- 報班學習Linux貴嗎?學習Linux怎麼樣?Linux
- hiccup和Latch off
- 如何學習Linux?Linux運維難學嗎?Linux運維
- Linux的好處有哪些?Linux運維學習Linux運維
- Linux的就業前景如何?linux運維學習Linux就業運維
- 女生適合學習Linux運維嗎?Linux基礎學習Linux運維
- 轉行Linux運維需要學習嗎?學習Linux運維Linux運維