Programming 板


> ==>發信人: [email protected] (), 信區: programming > http://www.ctyme.com/intr/rb-2980.htm > DOS 2+ internal - SET CURRENT PROCESS ID (SET PSP ADDRESS) > AH = 50h > BX = segment of PSP for new process > Notes: DOS uses the current PSP address to determine which processes own > files and memory; it corresponds to process identifiers used by other OSs. > Under DOS 2.x, this function cannot be invoked inside an INT 28h handler > without setting the Critical Error flag. Under MS-DOS 3.0+ and DR DOS 3.41+, > this function does not use any of the DOS-internal stacks and may thus be > called at any time, even during another INT 21h call. Some Microsoft > applications such as Quick C 2.51 use segments of 0000h and FFFFh and direct > access to the SDA (see #01687 at AX=5D06h) to test whether they are running > under MS-DOS rather than a compatible OS; although one should only call this > function with valid PSP addresses, any program hooking it should be prepared > to handle invalid addresses. This function is supported by the OS/2 > compatibility box. This call was undocumented prior to the release of DOS 5.0 > See Also: AH=26h - AH=51h - AH=62h > Category: DOS Kernel - Int 21h - D =============================================== MS-DOS 1.0 是 CP/M 80 的 8086 clone 版, CP/M-80 原先是用 PL/M 高階語言 寫的, 8086 CPU 出來後, 高階語言沒有那麼快出來, 所以 IBM 找了當時代理微 電腦所有高階語言軟體銷售的 MicroSoft 希望儘快完成 OS , 而 MS-DOS 1.0 版就是用了反組譯的 CP/M-80 再用 8086 相當於 8080 指令同功能的一部份指令 做替代, 在 16bit 的 CPU 上只沿用 8bit 部份做模擬(現在較流行的術語), 用 8086 組語就比 Digital Research 早一步做出了 CP/M-80 的 8086 版. 這是一 個典型的 "以快打慢, 趁虛而入". 當時的 Digital Research 已經有 MP/M-80 , 這是 CP/M-80 的 multi-user 版, 而且與 CP/M-80 算是具有相當多的相容性(但還是不完全是, 尤其那個 ^P screen dump printing 就難隔離老式 CP/M-80 程式), DR 後來推出單用戶版的 Concurrent CP/M (CCP/M , 宏碁最早外銷 PC 用的 OS , 使用指令式多視窗) 與 MS-DOS 競爭. MS-DOS 2.0 當時最大的改變是使用 UNIX 的 Tree Directory file 但仍與 V1.0 CP/M-86 相容, 同時去做了 Xenix OS. 因為 MS-DOS 本來就來自於 CP/M , 所以 PSP (program segment prefix, 這是 MS 另起的名稱)就沿用了大部份的功能, 但 MP/M 在此區塊做的記號是 user number , 所以就用每個載入程式的 segment 做區分, 而 segment 的用法就是原 先 8080/85 時代 Bank Memory (MP/M 在 8085/Z80 CPU 使用的擴大記憶體方法, 每個 user 獨立使用一個 Bank, Bank2 就相當於 segment prefix 2000) 的改良 版. 在沒有網路時代的 PC , 每個 user 就是每個 user program 也就是每個 user process , 而每個 User Program 確實也是由 command.com 這個 CLI (CP/M 稱為 CCP)載入程式執行(這是通稱的 Process, A Running Program)而來. 但 DOS 與 Concurrent DOS (CCP/M 對 DOS File System 相容的 DR OS) 兩者的最大不同就是 一個是沒有 Multi-Process 能力, 一個有. 只是沒有的那個就說是 Single Process Seriously Operation . 很多多工作業系統, 事實上是先於 MS-DOS , 在多工下早就使用 Process 這個 稱呼, 而 Process 執行時不只要佔據記憶體還得能分配得到 CPU 執行, 為了在 Single Processor 與 Multi-Processor 的機器都能一致解釋與應用(就是 Hardware Abstraction), 甚至捨棄 Task 而改用 Process , 而 Process 含有 VM 的 Virtual Processor 概念, 是會有 Processor 去照顧的. 如果要說 PC 用的 DOS 有 Process 的概念與實質的會是 Concurrent DOS ,若 說純原始的 MS-DOS 就會有誤解. Win3.1 跟 C-DOS/386 比較起來, Window 的勝出其實是很謹慎的處理使用者喜 歡 Graphic Display 及很多 AP 不經 OS 直接使用顯示卡(Game)這個事實. 由於 DR 的 MP/M CCP/M C-DOS 跨不過讓顯示需求與 Real Mode I/O 持續相容的難題, 就被 該衝就衝(CP/M-86), 該縮就縮(Win3.1)的 MicroSoft 給端了. MicroSoft 在 Multi -Process 的概念與應用上也是很謹慎的在區隔傳統主機上 Multi-Processing 的差 異, 為了就是不要引起過度的預期, 以免有不愉快的使用經驗. MS-DOS 2.X 時代, 如果 MS 猛宣揚保證是跟傳統單用戶程式能相容又能有多工效率, 那大概被 UNIX 給 端了(因為 UNIX 下少有單用戶的 AP 軟體, 不會有那種難替所有 AP 善後的麻煩). ====== MS-DOS 是 Single User , Single Process , Single Thread 的系統,早就發展 出 user space multiple thtreads 的 Micro-Kernel 概念啦. 這樣說能被接受嗎 ? -- ◎ Origin: 中央松濤站□bbs.csie.ncu.edu.tw From: 140.115.6.234
1F:推 abcdefghi:又來了,講不出道理,就開始背歷史.. 140.113.23.107 04/14 08:23
2F:推 dolphinus:他幾時講的出道理過...218.168.202.230 04/15 00:09







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草
伺服器連線錯誤,造成您的不便還請多多包涵!
「贊助商連結」






like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Tech_Job站內搜尋

TOP