我的家庭私有云計劃-8

 嗯,這會兒沒事兒,我們接着聊。

自打我把win7幹掉了,就悲劇了。

爲啥,我回顧了一下,以前年輕時我喜歡裝系統,一臺計算機裝了卸,卸了裝,折騰唄。其實那會兒我更多地把自己的計算機當做是玩具,沒當做工具,很少長期穩定在一個版本不動。

這呢,一來是自己想學習,喜歡折騰有關,二來也和當年的windows98系列不穩定有關。我一直認爲微軟當年強行把32bits和16bits整合,整了個不倫不類的Win95~98系列,嗯,還有Me,這事兒有點不靠譜。它裏面有寫堆的設計是擰着的,屬於亂來一級。所以穩定性不高,藍屏崩潰很常見。

後來大概微軟也覺得不靠譜了,所以從2000年開始,徹底廢棄16bits平臺,轉爲純32bits的,穩定性才慢慢提起來。

我呢,後來年紀大了,專注工作,慢慢地,也不喜歡裝卸操作系統了,喜歡自己的系統維持在一個穩定的態,胡主席不是說了嘛,不折騰,我們專心工作。

所以,我後來幾臺機器都是裝個XP,或者Linux就丟那不管了,也沒怎麼崩潰過。所以,我手裏沒有收集足夠的windows版本,這下完蛋了,機器掛了以後,我居然發現手邊沒有可裝的操作系統。

我開始找朋友,到處收集可用的windows服務器版本。

有朋友說了,裝win7不能裝集羣,無法做雲,首先啊,這條我不太同意,一臺計算機,只要能承接外部的網絡請求,提供計算服務,就算服務器,這和是不是裝服務器版本無關,我說過,很多工業現場的服務器,跑的都是XP。

還有,集羣不是必須的,只有需要了才裝,其實windows server2008的集羣有個問題,這個問題今年春節在新疆困擾了我三天,後來雖然解決了,但都沒有解決太好,這事兒我回頭再講。總之大家記住,集羣保的是數據安全性,但是天上不會掉餡餅,這個世界上不可能出現不買單就拿好處的事情,集羣的安全性是付出了代價的,效率代價,只是很多人不知道而已。

其次呢,我也想試試windows的服務器版本,因爲畢竟好幾年都在弄Linux,沒弄過windows,到底現在發展怎麼樣了,還不好說,試試吧,總有好處,所以最終我決定,還是搞套服務器版本來裝上。

按照某些高帥富的想法,弄就要弄最好的,最新的,那無非就是windows Server 2008的R2版本了,不過我一開始沒這麼弄,我首選2003,之所以不選2000是因爲它對很多新接口比如USB3.0缺乏支持,確實太老了。

嗯,給大家介紹一點原則啊,工業界在接受計算機軟件版本的時候,普遍趨於保守,比如我們很少給現場裝最新版的服務器,64bits也很少,2003還很普及,甚至,包括我們的VC開發版本也比較老,我的實時庫實際上是VC2008開發的,我們單位是微軟的合作伙伴,2010早就有了,但是我沒用。

爲啥,一切爲了穩定性,我們很多時候情願用有一點缺陷,但是我們已經把缺陷摸透了,都有解決方案的老版本,而不太喜歡冒險使用新版本,因爲工業現場穩定性第一。

當然,最後我的服務器使用了Windows Server 2008的R2,那是另外的問題,驅動問題,我本意還是想用老版本的。

嗯,乾脆,我也算老人了,這裏給大家講講windows歷史吧,嗯,apple公司的喬大爺過世,我也很悲痛,不過他自傳我沒買的,這十幾二十年我一直在關注他,他有什麼狀況我知道得比書上多,比如當年的Next公司,所以不需要自傳的。微軟也一樣,89年我就查過,當年它的年報上只有60來個人。

我先問個問題,windows1.0有誰玩過?呵呵,我就玩過。

在很古老的時候,83年那會兒,大家都是文本控制檯時代,appleII和PC其實差不多,嗯,Mac當時是個另類,率先推出了GUI,不過,很罕見。

那會兒,軟件界其實也很浮躁,大家的興趣整天都是怎麼弄GUI、漢字系統、輸入法等等,還有多任務處理,這些都是軟件界自己的東東,有點華而不實。反而,計算機存在的本質,即爲其他行業,其他生產經營活動服務這一條,大家都還沒關注到。

現在好點了,不過我覺得還不夠。

現在一說windows就是多任務圖形化操作系統,但是我的理解,多任務和圖形化是兩個概念,各是各,大家別然了。

說多任務的時候,其實就是能同時運行兩個以上的任務,這個其實並不難,很古老的時候有個CP/M操作系統,它的發明者,是個老先生了,後來寫了個DRDOS,注意,DOS不是微軟寫的,它也是買的,當時有不少PC的DOS操作系統呢。DRDOS就有個功能,多任務,其實是假的啦,就是當任務切換時,會自動把當前運行任務的所有信息存盤,清空運行區,然後調入新的任務開始執行,老任務此時其實沒有在運行,僅僅是保存了,切回來也一樣。

這事兒說起來一點不復雜,還是87年那會兒,我在AppleII上做實驗,就想到個法子,實現了這種假的多任務,很簡單,我其實那會兒連程序狀態都不會保存,但我知道怎麼操作屏幕數據區,每次按熱鍵,切換的時候,我就把當前的屏幕拷貝到一個內存緩衝區,然後啓用另外一個緩衝區的數據,恢復到屏幕,這樣看起來就是兩個任務切來切去了。呵呵,假不假?

當然實際上呢,還是用了一點手法和技巧,內部我有個表,裏面有很多程序段的入口,切換時會依次將表中某一項的數據PUSH到程序運行棧,然後下一次Ret的時候,會自動跳到新入口執行,以此來實現多任務。

我說了這麼多,主要是想給大家說明Windows1.0,其實就是這種假的多任務,實際上只有一個程序段落在運行,其他都後面壓着呢,處於停滯狀態。

至於GUI,其實也不是微軟的,DRDOS也有GUI的,IBM當時寫的OS/2也有,那會兒計算機爛,程序界也很少用美工,所有的GUI都很爛,圖片那叫一個醜,不提也罷。

這種亂七八糟的現象一直持續到1989年,Windows 3.0出世,終於,在386平臺上,Intel的硬件支持多任務執行,纔出現了真正意義上的多任務圖形化操作系統。也就在差不多這個時候,微軟公司開始進軍網絡平臺,因爲那會NoVell的網絡操作系統如日中天,賺了很多錢,呵呵,蓋茨眼紅了。

Windows退出的第一代成功網絡操作系統是Windows NT 3.51,和Windows 3.0很像。

後來,Windows95推出,隨之退出了Windows NT 4.0,二者界面也很像,但NT4.0之後,一直維持純32bits的特性,這和95不一樣。嗯,從NT 4.0開始,微軟每次推出的時候就是兩個版本,Server版和WorkStation版,也就是說,其實當年微軟同時在維護三個產品序列,16bits+32bits的9x系列,32bits客戶端應用的WorkStation系列,服務器應用的32bitsServer系列。呵呵,累不累?

肯定累啦,所以2000年,當Windows2000Family家族出世後,蓋茨終於忍無可忍,宣佈結束掉9x系列,windows平臺徹底轉向純32bits。

我記得當年一片哀鴻遍野,很多人在報紙上發表文章,論述微軟如何不厚道,究其原因呢,很多老程序員,老公司,都習慣了在16bits開發,32bits有很多新特性,不會啊,轉起來成本很高,程序員的學習曲線也很陡,包括我,當時轉這個也很痛苦。

後來呢,倒了一批公司,也掛掉了一批老程序員,慢慢的,雜音沒了,爲啥,32bits確實好用啊,新程序員一上來就學習32bits,沒有老的包袱,自然不發雜音了。

這個IT業就是這樣,不進則退,如果不努力學習新技術,跟蹤最新科技,那沒什麼好說的,肯定被淘汰。所以我養成了看書的習慣。

當然,我的庫和0bug這本書是另外一個話題,IT業也是一個行業,尤其固有的客觀規律,有些東東也是一百年不變的,比如一個鏈表,你放到哪個平臺它都是鏈表,這個不會變,我就是想把這些不變的東東提取總結出來,做成規律性的東東,這樣以後變的時候,起碼成本低點。

不信,呵呵,我現在開始準備寫傳輸的書,但是這本書我差不多要一寫幾年,寫出來大家看,肯定不會過時。很簡單啊,因爲我只寫不會過時的東東。呵呵,YY一下啊,算是做個小廣告。

從2000年以後我發現,微軟自己的步調也順了很多,畢竟摘掉了一個大包袱嘛。以後2003年推出Windows Server 2003,它的WorkStation版其實就是WindowsXP,嗯,微軟可以,居然把這麼專業的一個純32bits網絡操作系統,推成街機模型,幾乎是臺計算機就裝,可以,做的好。

2008年,微軟推Vista和Windows Server2008,這兩個其實也是一組,不過不太成功,2008的Server版還可以,Vista被罵死。究其原因,微軟自己沒搞懂,把Unix的垃圾當寶貝了。

嗯,1999年的時候,還是DOS時代,那會32bits的程序已經出來了,主要用兩個編譯器編譯,一個是WatcomC/C++,寫DOOM那個,還有一個就是我用的,djgpp,看這個名字就知道,這是Linux下gcc、gpp的DOS變種。

我用它是因爲它上面有個現成的圖形庫,叫做Allegro,我當時也寫了很多UI的,我記得當時我把很多寫遊戲的手法用到工業控制類程序上,界面很酷的,着實震驚了工業界一批老專家,他們哪見過這個啊,全屏動畫。

定點數、精確時鐘分量,都是那會兒玩出來的。

但是當時有個問題,djgpp資料很少,很罕見,特別是它的庫函數和DOS傳統的都不一樣,因爲它繼承的是Unix的思想。我當時沒辦法,就把它的庫函數手冊翻譯了一遍。嗯,我英文很爛的,不喜歡看太多英文,自己翻譯一遍,以後寫程序用的時候方便一點。

翻譯時我一直搞不懂的就是它很多函數帶着pid或者uid,直到後來學了Linux才搞懂,就是進程ID和UserID,我後來才明白,Unix很多底層函數都是帶着授權在運行的,ID不對,權限不夠,系統根本不准你Call,直接就是錯誤。

所以說Unix安全嘛,它的鑑權信息是做到api函數級別的。

但安全固然有了,方便性就沒了,Unix下每一步操作幾乎都是陷阱密佈,步步爲營,因爲不像windows,大家習慣了使用Administrator賬號登陸,權利幾乎無限,Unix和Linux我還真沒見過有人敢拿着ROOT賬號亂玩的,想死慌了。

基本上都是每個人一個賬號,只看得見自己這一畝三分地兒。

所以每個人在Linux上操作,動不動就要su來su去,因爲需要臨時管理員鑑權,做點系統維護之類的事情,比如安裝個什麼軟件的。

這很不方便,Linux這麼多年在客戶端應用上一直打不過Windows,這是個很大的原因。

應該說這在工業級、商用系統上很好,系統安全,我這次設計實時庫,裏面基本上也是參照這個設計的,每個請求信令都帶着鑑權信息,不行就打回來,避免非法操作。

但是擱在客戶端,就不妥了。普通用戶哪管你那個啊,總之就是一句話,老子不爽。

我一直認爲,Vista最大的問題就是爲了安全性,繼承了Unix上述這個特點,它的UAC簡直臭名昭著,動不動就蹦出一個框框要求輸入管理員密碼,獲得臨時鑑權,甚至,很多時候我就算是Administrator登陸,都要出來要求確認一下,很煩。

所以賣不開嘛。

其實Win7和Vista比,差別真沒多大,它就是很聰明地把UAC默認關閉了,用戶不打開,就不起作用,這就極大改善了用戶體驗。呵呵,微軟就是這樣,大家多拍幾下,就變聰明瞭。

嗯,前面說到哪了?Vista和Windows Server 2008其實是一組。

Win7呢,自然也有它的Server版本,這就是Windows Server 2008 R2,微軟大概還像繃面子,打死不承認Vista的失敗。當然,這樣的話,Vista對應的那個Server版本就被成爲R1了。

Win7這組呢,準確地講,我認爲應該叫做Windows 2010 Fimily,即2010版,但是微軟就是稱爲2008,呵呵。

Win8我還沒玩,估計應該叫做2012Fimily了。

還有個32bits和64bis的問題,其實從2003開始,windows的服務器版本就同時開發32bits和64bits兩個版本,2008R1也一樣。

但是,從2008R2開始,只有64bits了,不過只變了一半,Win7還是有32bits和64bits的。所以,下一代windows我預測啊,只有純正64bits版本了。

嗯,不過難說,因爲Win8號稱要支持手機的,arm平臺目前還是32bits版本,恐怕其客戶端還是32與64並存。

嗯,哩哩啦啦說了這麼多,賣賣老哈。其實也是順便說一下我在考慮爲小服務器搭配操作系統版本的思考。

軟件人員找軟件產品,還是很好找的,沒多久,我就找到了Windows Server 2003 64bits,Windows 2008 32bits/64bits,於是開始安裝。

安裝很容易的,C盤單獨格式化,D盤資料沒事兒,分分鐘搞定的,我一個個實驗。

結果,驅動把我卡住了。還記得我找小張拷貝的那個U盤嗎,它針對盈通這塊主板的驅動比盈通網站還豐富。但是,很客氣,沒有我要用的。

我每次裝完系統後裝驅動都失敗,後來毛了,我自己拆開它的驅動包查,才發現問題,它是有限支持,看起來AMD的CPU以後還是少用爲妙,驅動確實不好找。

它支持什麼呢,Win7、Windows Server2008的64bits版本,WindoesXP、Windows Server2003的32bits版本,其他就不支持了,呵呵,剛好把我上面準備的版本讓過去了。

64bits版本是必須的,因爲8G內存嘛。

所以我又找了幾天,從個朋友那搞到了一套最新的2008R2,64bits版本,他們單位買的IBM3650服務器帶的哦,這可是原裝正版,呵呵。

這會沒問題了。

一切順利,朋友單位的服務器工作在內網,永遠不上網的。我呢,老實不客氣地就把註冊號給用了,嗯,正版,可以在線升級。

老規矩,下補丁包就兩天,金山快盤同步也差不多這個時候,這樣,經過了差不多10天的折騰,我的小服務器終於活了。

擦把汗。休息一下,再聊。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章