精華區beta CSSE 關於我們 聯絡資訊
※ 引述《ikjhyu (還沒想到)》之銘言: : 請問各位高手... : 小弟不太清楚現在的windows系統究竟跟dos有沒有什麼關連... : 早期的windows系統(如windows3.1)聽說是架構在dos上的 : 個人對這句話的理解是, windows3.1應該是類似一種dos下的套裝應用程式 : 如lotus,PE2之類的,當然windows3.1的複雜度比較高一點 大致上正確. 不過我會認為用DOS 4/5的DOSSHELL程序, 及Norton Utilites for DOS 6/7/8的BE(Batch Enhanced)作比較會比較合適. Windows 3.1是DOS的功能的Extender吧. : 架構在 dos之上意指 開機時會載入dos作業系統的核心(所以是使用dos的作業系統) : 然後載入windows3.1系統 , 然後再輔助user去使用其他的套裝軟體或功能 正確. 不過當時Windows的最重要意義還是多工工作環境 (cooperative multitasking)和圖形使用者介面(GUI)吧. : 而到了windows95之後乃至現在的XP,據說是可以算是一個真正的OS了 : 不知道這個是要怎麼解釋或者理解..? Win3.1時代的infrastructure/API function多是建基於MSDOS.SYS 中的INT 21H(DOS function)中斷服務. Win95開始Windows內建的VXD已經可以處理主要功能, 不須要依賴 INT 21H. 同時很多INT 21H的中斷服務(由其是AH=80H以上的)都被 導向到Windows的VXD了. : 另外,好像常看到一個名詞: : "instance" 實體, 請問實體的意思是不是 : 假如工作列上開了n個word視窗,就是執行了同一個程式(MS word) n次 : 每個視窗都叫做一個instance ? : 或者說這種同一個程式開多個視窗執行的功能 叫做"多執行緒"? 不是. PE格式的程式執行時會需要進行Register Class的動作. 完成之後的 狀態會被稱為產生了一個instance(在Win3.1時重複執行程式的話, reg. class時會返回上一次reg. class時的hInstance值哦). 請 留意這裡不論class和instance的定義都和平常學OO時說的不同. 不要攪混了. 之後就可以進行Create Window的動作. 一個程式在系統資源容許下可以 產上任意數量的window(留意任何window control如textbox, button, combobox, listbox等都是window). 每一個非child的window背後都 會有一個winproc(可以說也就是一個process)去處理message. 不過不是每一個process都有window的. Windows service中的process 就是一個明顯的例子. 大致上就是這樣, 不過真的要說清楚的話是會很長的. 自己找書看吧. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.77.145.43