作者n052111089 (QQ)
看板C_and_CPP
標題[問題] 開機後進到程式
時間Thu Dec 3 22:28:00 2009
請問如何使得電腦開機後 會直接load寫好的程式
而不是load XP
如果程式結束後就關機這樣
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.187.229
1F:推 SILee:自己寫loader到MBR裡 12/03 22:32
2F:→ SILee:要塞一堆assembly code作系統初始設定和切換protect mode 12/03 22:34
3F:→ SILee:細節很多,不是很好做 12/03 22:35
4F:→ SILee:而且沒有system call可以用,很難debug 12/03 22:37
5F:→ n052111089:恩 謝謝ˊˋ.. 有沒有人知道捷徑阿 寫好的萬用loader 12/03 22:37
6F:→ n052111089:或者XP有提供什麼指令之類的 12/03 22:38
7F:→ final01:如果程式小 直接塞開機磁區 12/03 22:39
8F:推 VictorTom:聽起來有點像Asus的ExpressGate在做的事....@_@" 12/03 22:43
9F:→ n052111089:恩 程式不大 要怎麼塞開機磁區@@? 12/03 22:46
10F:推 twotwoone:你應該是想用C或C++寫吧?直接告訴你,不能跑 12/03 22:50
11F:→ twotwoone:要寫ASM的話,可以去ASM版,有相關討論 12/03 22:51
12F:推 SILee:程式再小也不可能直接塞MBR... 12/03 23:08
13F:→ SILee:系統開機時是run在x86 mode下的 12/03 23:09
14F:→ SILee:你的C/C++ code根本沒辦法run 12/03 23:09
15F:→ n052111089:嗯嗯 感謝大家回答~~ 12/03 23:11
16F:→ SILee:一定要寫asm去切protect mode和設定好各個segment空間 12/03 23:11
17F:→ SILee:即使這樣C++很可能也不能run,只有純C可以跑 12/03 23:13
18F:→ SILee:過程很麻煩,完全是在考驗對整個計算機原理和x86的瞭解程度 12/03 23:16
19F:→ jlovet:灌個小小linux然後看你想寫什麼就寫什麼.. 12/03 23:59
20F:推 kikiqqp:我比較好奇你要這玩意的用途為何 12/04 00:08
21F:→ MOONRAKER:其實他弄到一份DOS也就可以了,這門檻低多了 12/04 00:15
22F:推 awashharp:つ《自己動手寫作業系統》 寫的很清楚XD 但不知道是不是 12/04 00:29
23F:→ awashharp:原PO想要的東西XDD 12/04 00:30
24F:→ james732:樓上推薦的確實是好書 不過離原po想要的「捷徑」有點遠XD 12/04 00:37
25F:→ n052111089:再次感謝大家回答啊~ 12/04 02:14
26F:推 littleshan:為什麼「只有純C可以跑」? 12/04 10:20
27F:推 SILee:因為C++裡面那一堆class的建構要用到很多system call 12/04 10:47
28F:→ james732:可以請樓上多說點嗎?class建構有用到system call? 12/04 11:10
29F:推 littleshan:constructor 只是一個普通的 function 啊 12/04 13:20
30F:→ Knighter:xp裡的啟動可以load寫好的程式 12/04 16:08
31F:推 VictorTom:樓上沒注意到原po不要load XP....XD 12/04 16:16
32F:→ netsphere:那load linuxKernel 12/04 20:45