2025年7月14日 星期一

碰到ramfs的議題,老人家的回憶

 因為這是我十幾歲的時候,早期學電腦的經驗,所以細節不清楚,也不確定自己判斷的對不對。

我最早學電腦是使用學校的PA-2000。你沒聽說是必然的,因為它是全華早期出的PC,CPU是Z-80,記憶體多大?不清楚,它使用的OS是CP/M,厲害的是,他一台有四個終端機,共用兩個軟碟機。

四台終端機,只有兩個軟碟機?那怎麼搶?不用搶,因為一旦用系統開機,它會開一個ramdisk,把RAM拿來做硬碟,只要你沒關機,就用這個記憶體磁碟機來存放你的程式。要離開的時候,再把軟碟插上,把檔案帶走即可。

這是因為我發現Linux早期開機initrd所使用的ramdisk,應該跟我早期用的,在CP/M上的ramdisk,應該是一樣的技術,搞不好原始碼還相同,只是Linux早期直接拿來用。難怪後來還要換成ramfs,早期考慮東考慮西做出來的東西,後來發現條件、環境都變了,不再適用了,換掉是必然的。


有 Creational Patterns 的原因,是否是有些狀況不適合直接用 new 建造出一個物件來用?

  沒錯!您的直覺非常準確,這正是整個創建型模式(Creational Patterns)核心要解決的根本問題。 在軟體開發中,直接使用 new 關鍵字來建立物件(例如 MyClass obj = new MyClass(); )雖然直覺又方便,但在中大型系統或需要高度擴充性的...