精華區beta Programming 關於我們 聯絡資訊
> ==>發信人: bert@Evergreen (哇哩咧...), 信區: programming > MS-DOS 的前身是 Seattle Computer Inc. 的 Tim Patterson 自行 > 以類似 "clean room" 的手法寫出來的 CP/M API 相容 OS > http://en.wikipedia.org/wiki/Tim_Patterson > http://en.wikipedia.org/wiki/QDOS > 在 Patterson 寫出 QDOS 時, Digital Research 的 Gary Kildall > 還沒辦法對 IBM 承諾 CP/M-86 的正式推出時間 Tim_Paterson 的 CP/M-86 是否以 "clean room" 方式完成看來是有爭議的. 照 wiki 的說法, 他跟 MicroSoft 公司合作先做過 Apple-II 上的 z80 soft-card 來看, 這個卡就是專跑 CP/M-80 , 如果沒記錯應該是 v2.0-2.2 的版本. 由於原 CP/M-80 是 PL/M 寫的, 編譯器就是有規則, 可以用反組譯 還原出 Source . 而 MicroSoft 手上那時有 MBasic-80. 那個時間點的問題應該是 8086 的 編譯器是否已 ready 的競爭問題. 照 wiki 的說法, 就是 MS 先弄了 MBASIC-86 , 然後找 Tim Paterson 弄 了 ASM-86 版的 CP/M-86 , 不過, 個人覺得應該是同一時期. 猜測當時一 個最快的做法就是使用 8086 與 8080 做指令對照轉換, 就可以讓 只用 8bit bus 的 8088 (不是 8086) 完全模擬出 8080 的所有指令, 這就完成 CP/M-80 到 CP/M-86 的過渡, 但這樣會使得 16 bit 的 8086/88 CPU 只 跑 8bit 的功能與速度. 這也比較容易解釋為何 IBM 用 8088 cpu 而不是 先出來的 16bit data bus 的 8086. 要移植所有 CP/M-80 上 所有的 AP 在那個時代並不是那麼容易. 可是這樣就可以搶先做出來. Digital Rsearch 難以告倒 Tim Paterson 的原因, 傳言之一說是師 生, 但就其設計 Z80 Soft-card 來看, 因為這是一個雙處理機的架構, 6502 與主板就當了 CP/M-80 BIOS 功能的後半段, 必須非常熟悉 CP/M-80 的 Disk-BIOS 規範, 兩公司者間可能應該有來往. 而轉用 ASM-86 組語寫 的 CP/M-86 當然會跟用 PL/M 寫的 CP/M-80 不同. 這個時間搶先與價廉 有 MBASIC-86 Available , 同時又是與 CP/M-80 在使用方式上相容, 就 把當時最大隻的 Digital Research 扳倒了. MS-DOS 還有一個優勢就是使用 FAT 表的 file system , 沒有 CP/M 檔案超過某個大小就會在 Directory 產生多筆 record 的缺點. 在同一個時間點, 1980 時, 台灣也已有 CP/M-80 相容的 Source , 在 1983 年也有 8086 與 6502 或 z80 的雙 cpu 雙 OS 系統, 但這一切 估計都抵不過 IBM 的品牌優勢. 技術與知識(當時台灣對美國發生的事都得 落後很久才知道一些)固然重要, 但不能銷到國外賺到錢就一切成空了. 台灣的相容PC外銷, 是對 IBM 與 MS 連手進攻的 "逆襲", 讓利也就分 化 MS 與 Intel 使之偏向台灣的製造商, 願意把最新的研發情報先行與台 灣分享(聽起來很悲哀, 但這種資訊是很值錢的). > http://en.wikipedia.org/wiki/Gary_Kildall > 至於 Xenix (不是 Zenix) 是 Microsoft 在 1979 年向 AT&T 取得 是 Xenix , 但很巧妙的, MS 吸納了 Tree-Structure 的目錄結合 CP/M 的命名法與指令使用習慣. 這是顧及使用者習慣的一種相容. > UNIX Versin 7 授權改寫而成的 16bit UNIX > http://en.wikipedia.org/wiki/Xenix > 關於 Microsoft 如何把競爭者拋在後面, 最主要的還是低價策略, > 及原有 CP/M 上的程式移稙到 MS/PC-DOS 上難度較低的緣故 > http://www.digitalresearch.biz/HISZMSD.HTM 接觸很多教軟工與研發軟體的, 恨死了低價策略, 但如果有 Source 在手上 怎麼會怕推不出新版本 ? -- ◎ Origin: 中央松濤站□bbs.csie.ncu.edu.tw From: 140.115.6.234