第五章 緩存、快取、優化空間

投票推薦 加入書籤 小說報錯

  健太郎真的很忙,小林徹再看到他時,已經是三天之後了。

  業績壓力巨大,面對隔壁任天堂的主機,實在是讓人很難不提起精神。

  即便如此,健太郎回來時依舊是一副輕鬆隨意的表情,沒把工作中的惱火帶回家裡。

  「小徹?你的遊戲寫的怎麼樣了?」

  「額……」

  小林徹撓頭。

  這老登,真是哪壺不開提哪壺。

  小林徹說:「我覺得還好,但也有一些問題,據我所知,問題目前仍在解決當中,而解決問題的關鍵,就是要解決這個問題。所以我們目前可以說,我們還在解決問題。只要問題獲得了解決,就能解決這個問題。以上,就是我的問題。」

  健太郎瞬間後仰。

  這是個什麼說法!

  健太郎說:「讓我看看怎麼個事。」

  小林徹驚,聲音加大:「老爹不是硬體工程師嗎!」

  健太郎聲音更大:「硬體工程師也要懂基本原理吧!」

  健太郎湊近過來,眼角餘光,卻是先看到了車庫遍地丟棄的包裝袋,都是最近這段時間裡小林徹填飽肚子剩下的各種麵包泡麵小零食。

  看得出,最近小林徹真的有在努力工作。

  「勞逸結合也很重要啊。」

  健太郎嘀咕了一聲,翻看起眼前的代碼。

  七千個字節,二百二十行代碼,寫的滿滿當當。

  「唔……中規中矩。」

  至少語法沒錯,而且是他很熟悉的pascal語言。

  「嗯?!」

  健太郎忽然湊近了屏幕。

  螢光綠的屏幕上,寫著格外簡約的字符串。

  「小徹,你這是什麼意思?」健太郎有些看不懂了。

  此刻的字符串中,出現了一大段不知何用的東西。

  只有七千個字節的情況下還要寫這種內容,健太郎有些看不懂。

  「額,是這樣的。」小林徹解釋:「就是,這是個索引。」

  小林徹抬手比劃了一下。

  如果用能夠理解的語言去講的話,那麼他在做的事情就相當於是基礎。

  假如一個程序相當於一個超市,要想在超市中買到分門別類的物品,就需要對應的貨架和標號,劃分對應的區域。

  小林徹所做的,就是打造出對應的貨架,劃分專門的區域,這樣能夠極大的增加程序的運行效率。

  但是,聽小林徹解釋完畢,健太郎卻搖了搖頭。

  「想法很好,但你有沒有想到一個問題,SG1000的卡帶,儲存介質只有8KB,除去必要的驗證程序,確保卡帶運行的部分,圖像和音聲素材等等,最終可用空間只有7KB。與其耗費心思寫那些索引,不如直接將你的這個,額,每一個角色?」

  ——健太郎不太確定這些是不是遊戲角色,因為實在是太多了。

  「給你的每一個角色,單獨定義一條case語句。」

  小林徹一愣。

  如果程序還是一個超市的話,那麼,小林健太郎的方案,就相當於是把所有的貨物都分別拴上一根繩子,然後繩子連接在售貨員的手上。

  如果顧客要買可樂,就拉動可樂繩子,如果顧客要買麵包,就拉動麵包繩子。

  小林徹不會這麼做,是因為這是早就被淘汰的寫作方式,沒人會用這麼笨的寫法,費時費力,而且效率很慢。

  但是現在。

  健太郎卻真是點醒了小林徹。

  在總共只有7KB的儲存空間條件下,程序優化是要達到字節級別的。

  換句話說,他手裡的不是一家幾百平米的大超市,而是一個只有兩平米的書報亭!

  這種情況下根本就沒必要去製作貨架,因為貨架本身也要占用大量的空間。

  效率提高的同時程序就必然變得臃腫,這一點是無可厚非的,又快又小的東西只能是J2,不是程序。

  所以,對於當下這個時代,後世的方法雖然更好,卻不適合這個時代。


  在空間不足的情況下,單獨定義每一個方塊,寫出單獨的語句反而是更有效的行為。

  「對呀!」

  幾句話,聽的小林徹直拍大腿。

  後世的經驗雖然難得可貴,但對於這個時代貧瘠的儲存空間而言,有些事情也是不得不去順應時代的。

  「我知道了,我應該這麼做!」

  小林徹扯過來椅子,再一次坐在電腦前,開始忙碌起來。

  看著小林徹噼里啪啦的鼓搗鍵盤,健太郎不禁搖頭。

  這倒霉孩子!

  看到小林徹的頭髮都有些打綹了,健太郎還是很心疼的。

  小林徹在美國的時候可是最注重外表的,在美國的時候就沒少拈花惹草,雖然健太郎根據觀察,發現小林徹好像是有點比較特殊的傾向。

  在戀愛關係中比較處於被動,但其實是主動引導對方從而讓自己處於被動的一種特殊傾向。

  沒想到回到日本以後,居然為了他的事情如此擔心嘛!

  不然的話,他怎麼會忽然跑去說寫什麼遊戲。

  健太郎深受感動。

  所以,他決定做點什麼。

  至少得確保小林徹吃飽吃好!反正不缺錢,錢能解決的問題就不是問題。

  方才走出車庫,健太郎忽然靈光一閃,停下腳步。

  這麼說起來。

  對於只有8KB的程序而言,小林徹的方法是無用而且多餘的。

  但是。

  對於他們正在進行的硬體優化工作而言卻不一樣。

  「對呀!」

  健太郎一拍腦門。

  雖然是個目前還沒有採用的新方法,但如果嘗試一下的話,或許能夠極大的提高家用機的性能。

  目前,SG1000採用的德州儀器方案,硬體性能上中規中矩,問題是在於世嘉硬體部門的調校上無法完全發揮硬體性能。

  而如果能夠找到重新調校的方法,使得家用機能夠更有效的調用硬體性能,那麼,或許能夠在成本不變的情況下,一定程度上提高SG的性能。

  追趕FC是不可能的,FC用的硬體方案規格高於SG,但能在成本不變的情況下追上一部分,也足夠了。

  想到這裡,健太郎簡直感覺有一團火要從胸口噴出來了。

  這件事情可以做!就算失敗了也只是耽擱幾天時間,對當下本來就惡劣的情況也不會有更糟糕的影響。

  這件事情,他做定了!

  健太郎不知道的是,他設想的這種技術正是硬體中的『緩存』,繁體地區稱之為『快取』。

  處理器在擁有多級緩存的情況下,能夠極大的提升運行效率。

  此技術雖然已經出現,但直到九十年代才開始大規模運用。

  而如果他採用這種方法,雖然無法讓SG1000擁有多級緩存,但,卻是切實能夠提高運行效率的。

  一邊重寫俄羅斯方塊的底層代碼,另一邊研究如何提高硬體調度性能。

  兩邊都在忙個不停。

章節目錄