軟體脫離硬體的束縛才真正成為軟體

2021-08-26 20:10:44 字數 904 閱讀 6660

近日讀了《linux/unix設計思想》,得到了很多啟發。

一直以來,人們認為軟體執行於硬體之上。這是事實。然而嚴重依賴某種硬體的軟體事實上只是乙個奴隸而已,一旦硬體主人風光不再,那麼它也壽終正寢了。因此編寫可移植性的**是最最重要的,隨著硬體的多樣化,組合語言越來越不受歡迎。硬體的束縛只要存在,就會限制軟體的進一步騰飛,軟體只有脫離硬體的限制才能天馬行空,其設計精髓才得以表現。

那麼,基於特定硬體的軟體真的一無是處麼?考慮這個問題的時候,不妨想一下軟筆書法,直到今天,使用中性筆,原子筆的今天,軟筆書法依然是一門藝術,然而人們終於認識到它只是一種記錄的工具而不再是思想本身,因此軟筆書法只能是一種藝術,而不再是思想本身,曾幾何時,寫一手好字被認為是有文化,有修養,而今天,這種陳舊的觀念已不復存在。曾幾何時,彙編程式設計師多麼令人崇拜,可是後來,人們發現軟體有很多僅僅屬於自己的東西。基於硬體的調優以及其他工作完全成了很少一部分人的工作,當然你也可以稱他們為藝術工作者。如今更令人崇拜的是搞純軟體的。軟體發展了這麼多年,事實上已經積累很太多的設計理念,模式,開發經驗等有價值的東西,而這些東西和硬體的關係是不大甚至沒有什麼直接關係的,如果被硬體牽住,那麼就無法徹底透徹的理解和應用這些純軟體的東西。

基於特定硬體程式設計,往往希望得到的是「更快」,然而「明年的硬體的表現」會令你費力的工作汗顏。

學習linux核心的時候,我曾經花了多少個日日夜夜看**,除錯,編譯,就為了弄明白0x7c00這個位置的特殊性,搞得我差點成了硬體工程師!花了那麼久研究intel處理器的分段機制-完全是為了相容,其實就是為了能把linux核心看下去,當我終於看到start_kernel的時候,已經乏力了...而實際上,真正的大牛們可以直接從schedule函式中得到排程器設計的資訊。如今的我,雖然遠遠不是什麼大牛,但是也甩開4年前的自己很遠了吧?...現在,還有多人像我當年一樣,為了弄懂linux核心而去研究intel分段之類的,是時候停下來反思一下了。

軟體脫離硬體的束縛才真正成為軟體

近日讀了 linux unix設計思想 得到了很多啟發。一直以來,人們認為軟體執行於硬體之上。這是事實。然而嚴重依賴某種硬體的軟體事實上只是乙個奴隸而已,一旦硬體主人風光不再,那麼它也壽終正寢了。因此編寫可移植性的 是最最重要的,隨著硬體的多樣化,組合語言越來越不受歡迎。硬體的束縛只要存在,就會限制...

中國軟體行業的產業化實現的束縛

中國軟體業已走過十幾個年頭,很多人都會拿中國軟體發展與印度軟體產業作比較,為什麼印度能實現軟體產業化,即有一定的產業標準 一定的規模,也就是我們所謂的軟體工廠,據說最大的軟體公司的職員有上萬人。分析來分析去主要集中在營運機制 國家政策等,甚至是有的說是因為語言原因。人家印度是用英語,而軟體開發所有的...

關於軟體硬體的感想

軟體 1 軟體對數學知識的要求比較高,所有的演算法,實際上就是把數字公式用程式語言實現的一種方式。2 對於做底層開發,如做一台電器裝置,其內部用的演算法大多數都是現成的,可以通過各種途徑得到。所以很多演算法不需要自己寫,直接移植修改即可。甚至一些環路控制的 可以用 軟體自動生成。3 做軟體的起點比較...