第466章 有的是辦法對付那樣的人
於是,周三了,跑步的時候孫彧跟李媛說他晚上還要去實驗室幹活,問她跟不跟著一起。
「我們明天考核,今天就不去了。」
「就一科嗎?」
李媛嗯了一聲,不過不管李媛是不是跟著孫彧去實驗室,他倆都不需要再去圖書館搶位置,晚飯後的空餘時間還是挺多的,天色黑的又晚,蚊子還沒有那麼猖獗,兩人於是在東湖邊看了一陣荷花。
畢竟不是周末,6點前後在東湖邊坐著並沒有什麼打擾,只是看著湖面上飛來飛去的蜻蜓,「你說是不是要下雨了?」李媛問道。
「這個也不好說,傍晚正是蜻蜓覓食的好時間,晚霞中的紅蜻蜓嘛。」
「往年五六月份都是要下好大雨的。」
「華南前汛期嘛,不過今年這個月沒怎麼下雨,6月份可能就要下了。」
「你看過銀河嗎?」李媛抬頭看看天空,除了斜掛在半空的半個月亮,還能看到的就是那顆太陽系第二行星了。
「看過啊,小時候夏天躺在屋頂往天上看,除了銀河,星星密密麻麻的,都有一種針扎不進的感覺。上大學那年暑假都還是這樣,但是去年暑假回去,天上星星都少了很多。」
「這叫光污染?」
「是吧,反正到了羊城之後,晚上看不到星星也就算了,天都是紅彤彤的。」孫彧哈了一聲。
「走吧,回去吧。」李媛嗯了一聲,抬手看了看錶,也快7點了,時間過的也挺快的,要不是湖邊晚上蚊子實在太多,好想在這裡一直待下去。
於是,把李媛送進宿舍大門,孫彧也回宿舍拿東西去實驗室。
兩塊板硬碟都掛載成功,並且能夠在上面編譯和運行程序,然後大家一致覺得軟盤可以先不管或者乾脆放棄掉,先測試一下存儲卡。
畢竟這兩塊板跟個人電腦主機板的區別只是在於集成度更高一些,架構上其實更加簡單,而處理器是一樣的,於是指令集也是一樣的,按照編程指南做了一些修改之後,只是單用戶單進程讀寫存儲卡的話,結果也很令人滿意。
「這種板的適用場景肯定是單用戶,但是多任務也是必須支持的,我們原先寫驅動的時候好像沒有考慮過這一點?」楊巋說道。
「是的,別說驅動了,我內核進程管理現在其實也很簡陋,只是考慮了正確性。」
「那意思就是進程重新調度執行之後,有可能跟原來的執行上下文不同?」
「如果沒有換出那就沒有問題,如果換出的進程不超過兩個,那也沒問題,超過的話,調度效率就會很低,恢復現場的時候可能會死等。」
「那內存管理也有問題吧?」
「嗯,說到底,應該就是內存頁面調度的問題,調度演算法還沒有好好琢磨過,每個頁面多大合適也沒有很認真的測試過。」
「那你打算怎麼搞?」
「那就先解決這個問題咯。」
「你們兩個先停一下,現在是不是說如果多個設備共同工作,是不支持的?」裴華插話道。
「支持,支持數目有限,具體能支持多少個,還沒測試過。」
「本來也沒打算支持無限多個外圍設備吧,現在最多能支持幾個?」裴華又問道。
「至少同時支持硬碟和這個存儲卡。」
「那就把軟碟機加上看看?」靳平說道,現在能接上去的外圍設備就這幾個。
測試結果多少有些意外,軟碟機和硬碟之間數據傳輸速度正常,但是軟碟機和存儲卡之間數據傳輸很慢,比軟碟機和硬碟之間的傳輸速度慢了很多,而存儲卡和硬碟之間的數據傳輸率卻又是正常的。
「存儲卡和硬碟之間的數據傳輸率真的正常嗎?」孫彧不由得有些懷疑。
「這板支持DMA嗎?」楊巋似乎也想到了什麼。
「支持,顯然軟碟機和硬碟之間就是通過DMA傳輸的,」孫彧翻了一下使用手冊和編程指南,想了想,然後又說道:「唔,問題又到了驅動程序上了,顯然沒有發DMA請求。」
「那現在主要就是兩個問題,一個是存儲卡驅動沒有發DMA請求,一個是內存頁面管理的參數需要調整?」裴華說道。
「唔,我先解決內存頁面管理的問題,驅動沒有發DMA請求這個問題有點古怪,我得檢查一下我的系統調用是什麼回事。」
事情就是這樣,一個問題能牽扯出許多問題,不過能找到問題,也算是收穫,孫彧決定明天跟老師彙報一下,以及找時間去跟潘智交流交流,看看他那邊是個什麼情況。
找老師彙報並不是要老師幫忙解決問題,這些問題老師也並不能幫著解決,一般老師就是提供一些解決問題的方向和思路參考,而孫彧彙報的時候也把自己的解決思路一併說了,不論是李老師,還是帶操作系統實驗的羅老師,都認為他可以先按照自己的思路做下去看看,畢竟從理論的角度看,孫彧的做法還是合理的。
然後孫彧發現本來頁面大小他在pc機上設置的是4K,但不知道為什麼交叉編譯的時候他改成了1K,真是莫名其妙,孫彧也已經忘記了當時是怎麼想的,至於調度演算法,一時半會兒也看不出什麼問題來,只好先不管它,但是為什麼會改成2K這個問題,孫彧覺得沒有就是隨便改的那麼簡單。
所有的常數都是宏定義的,不存在一個地方改了另外的地方沒改,改了頁面大小,相應的頁表項大小,頁表大小也會變,不過不管怎麼說,孫彧先把頁面大小改回了4K。
趁重新編譯的功夫,孫彧慢慢思索著當初是怎麼想的,應該是為了做個實驗,4K的頁面可能有些大,為了減少內碎片,所以他改成了1K,打算試試看效果怎麼樣,效果看來挺顯著,進程稍微多了那麼兩三個,就開始抖動了。
這個問題是有理論根據的,至於是不是改成2K再試試,孫彧決定先不費那神,直接改回4K,先解決存儲卡驅動沒有發出DMA中斷的問題。
顯然當初在電腦上測試的時候,存儲卡和硬碟之間的數據傳輸是通過了DMA的,不然通不過那時的驗收,於是差別就在於系統調用上了,現在驅動調用的系統調用是孫彧自己實現的,而那時調用的是DOS的。
那就看代碼咯,孫彧發了一會兒呆,然後看了看時間,已經快5點了,時間過得可真快。
「先回去了,晚上再過來。」孫彧站起身,東西都不用帶回去,下次下午過來的話,就穿運動服好了,可以直接去跑步。
「怎麼樣?」裴華問道。
「頁面參數我改過,本來是想測一下找個最優配置的,我先改回來看看,晚上過來檢查一下系統調用的代碼,看看什麼回事。」
「你現在板上的程序是改回去了的吧?」
「是的。」
「那行,你那個參數在哪裡改?打算怎麼改?我來測一下。我等下要到研究生飯堂那邊吃飯,吃完就回來,你們晚上要來的話直接過來就行,我肯定在的。」裴華說道。
「就這裡,我打算測一下4K,2K,1K都有什麼變化的。」
「好,我試一下。」
有點晚了,孫彧便沒有去跑步,吃過飯去找李媛,免不了被李媛盤問了一番。
兩人交往到現在,這種程度的小脾氣,對於孫彧來說,就當是李媛在跟他調情撒嬌了,因為李媛真的從來沒有跟孫彧撒過嬌。
「你晚上有什麼事不?我等下就要去實驗室了。」把李媛拉到路邊的偏僻處,控制住她,孫彧這才問道。
「沒事,晚上夏衡去不?不會吵到你吧?」李媛反控制住孫彧,咬著他的耳朵說道。
「去的,就是晚上恐怕要忙,不一定顧得到你。」
李媛沒有吭聲,只是加緊了摟住孫彧的胳膊,半晌才又問道:「你什麼時候去?」
「要去現在就可以去了。」
「那我回去拿本書。」
孫彧應了一聲,兩人這才分開,牽手往東五走去。
「今天考核感覺怎麼樣?」
「沒什麼怎麼樣,就是摸下底,算平時分。」
「那你準備拿什麼書去看?」
「繼續看小說咯。」
「你們這算不算看小說看到想吐?」
「是啊,唉。」
李媛拿了書,是跟張薇薇和於熙一起下來的,張薇薇一如既往的微笑著跟孫彧打了個招呼,於熙只是點了點頭,不過表情也看不出什麼端倪來。
「你們現在去圖書館還有位子嗎?」孫彧有些沒話找話地問道。
「沒有就去新教咯,你們這是幹嘛去?」搭話的卻是於熙。
「去我們老師的實驗室。」
「實驗室?」張薇薇有些詫異。
「想去看看不?」李媛能猜到張薇薇奇怪什麼,她剛開始聽到這個詞的時候也是一下沒轉過彎來的。
「方便嗎?」
「差不多跟新教就在草坪兩對面,門口看一看也不妨礙你們去自習。」
「裡面都有什麼?」於熙也是有些好奇,但她並不打算跟著去。
「就是幾排桌子,一台電腦,兩塊什麼電路板,還有一些雜七雜八的東西。」李媛說道。
「沒有什麼試管燒瓶天平酒精燈顯微鏡?進去不用穿白大褂戴帽子戴口罩?」於熙繼續好奇著。
「沒有沒有,電子系的實驗室應該都是電路板比較多,我們計算機系的實驗室基本上都是電腦。化學系生物系的實驗室大概就有你說的這些了。」孫彧不由得嘴角抽了一下。
「那算了,沒什麼好看的。」張薇薇於是說道。
孫彧於是笑笑,李媛更是無所謂,本來她也就那麼一說,不去最好。
其實實驗室這個概念,中學和大學所指是不大一樣的。至少,中學的實驗室是給學生做實驗用的,而大學里,實驗室大概有兩種,一種是掛到某個人或者某個單位名下的實驗室,這是實實在在幹活搞研究出成果的地方,還有一種跟中學一樣,是給學生做課程實驗用的實驗室,孫彧他們的普通物理實驗便是去物理系這樣的實驗室做的。
不過對於計算機系的學生來說,去做他們自己專業的課程實驗,一般都說的是去機房上機,而不是去什麼實驗室做實驗。
一開始雖然不大好理解實驗室這個詞內涵上的差異,但孫彧很快也就接受了,畢竟實驗這個詞的涵義還是很廣泛的。
實驗室里除了裴華,夏衡已經先到了,看到李媛進來,便把她拉到一邊,很快兩人就說笑起來。
「測試得怎麼樣?」孫彧問裴華。
「4K跑起來好像順滑一些,就是感覺,沒有數據支持的,我還試了一下8K,跑起來感覺跟1K差不多。」
「沒什麼別的問題吧?4K,2K都沒什麼問題,或者我感覺不出來有什麼問題,1K,8K大概就是你說的那個抖動問題?總有種卡頓感。」
「那現在上面跑的是多大?」
「4K,要是內存大一些,頁面是不是可以設置的更大?」
「4K應該是一個合理大小了,32位地址線,頁表可以剛好湊成一頁。」
「頁表大小跟你頁表項長度也有關係啊?」
「是啊,對了,我就是定好頁面大小才把頁表項長度湊出來的,所以頁表項現在有不少冗餘位,留到以後說不定有用。」
「所以,頁面小了,頁數就多了,然後一頁就放不下一個頁表了?」
「是啊,我操。」孫彧稍微心算了一下,確實如此。
裴華於是大笑起來,看到靳平進來,於是又招呼了一下夏衡:「來,我們繼續。」
不管怎樣,算是大體解決了一個問題,孫彧便專心看起系統調用的代碼,一邊對照著使用手冊和編程指南。
顯然,這兩塊單板機上DMA的配置跟PC上的不一樣,於是孫彧的代碼里發DMA請求失敗,便轉入非DMA方式進行數據傳輸。
問題找到了,但是不能頭痛醫頭腳痛醫腳這麼處理,不同的架構里中斷和各種硬體請求的配置很大可能都不一樣,必須找個比較普適的辦法來處理,或者首先需要定義一個通用的適配介面。
用C語言來實現多態嗎?孫彧不由得笑了起來,這可不是一件簡單的事情,但是值得嘗試。
「你又中了三笑逍遙散?」旁邊李媛已經盯著孫彧看了半天,一開始看到他略微皺著眉頭,她心裡多少有些緊張,現在孫彧笑了起來,看來是問題解決了,於是她也輕鬆了下來。
靳平和夏衡哈哈笑了起來,裴華正喝著水,於是被嗆了一口。
孫彧也笑了笑,站起來伸了個懶腰,然後扭頭看向裴華他們那邊,說道:「配置不一樣,所以DMA請求失敗,這個數據結構我要重新定義一個。」
「系統沒崩潰啊。」裴華緩了緩,說道。
「我就主要是關注系統不要因為這些失敗請求而崩潰的問題,反倒是把可能出現的問題隱藏起來了。」
「不提示一下?」夏衡問道。
「操作系統啊,除非是執行不下去,不然是不會提示的。」
「現在咱們不是在測試嘛。」靳平也說道。
「唔,這也不是不行。」孫彧點點頭,他覺得他今晚的任務算是結束,不過現在還沒到9點,說要走有些不大好意思,於是又看著顯示器發起呆來,怎麼處理那個通用數據結構,他需要先想一想。
當然,可以認為這是用C語言來實現一個類,或者說用面向對象,或者泛型,的思想來實現這個結構,以及使用回調函數來實現具體的操作。
發了一會呆,孫彧從書包里拿出紙筆,挪到了一邊空桌面上,開始寫寫劃劃。
李媛把椅子挪到孫彧邊上,背靠著孫彧,翻著手裡的小說。
而另外一邊,裴華他們三個,正在一塊麵包板上實驗著電路,一邊低聲討論著。
實驗室安靜下來。
李媛用肘推了推孫彧,然後把手腕伸到孫彧面前,9點半了。
「好吧,走吧。」孫彧點點頭,把東西往書包里收好,站起身:「我們先走了。」
「一起吧。」裴華看看靳平和夏衡。
「那走吧。」兩人應道。
路上又碰到了張薇薇和於熙,於是四位女生一路自己往女生宿舍那邊去了,三位男生則是拐到了白蘭餐廳,忙活了一晚上,無論如何也得補充一下營養的。
還有一個月大學生活就要結束,靳平不免有些唏噓,他大二的時候還有些渾渾噩噩的,到了大三才知道自己應該做什麼,幸好大一大二的時候依著慣性沒有掉下去,不然現在......靳平想了想,發現其實也沒什麼,不外乎去找個工作而已。
裴華對靳平的說法倒是有些不同看法,他當年也是那麼過來的,現在讀了快一年的研究生,跟以前的同學小聚,一個個都很羨慕他現在的生活,畢竟再過兩年畢業之後,就算跟他們做了同樣的工作,一則收入肯定會高一些,二則在學校多呆了三年,他們都很懷念在學校的日子。
「你這看法跟剛開始的又不一樣了啊。」孫彧於是笑道。
「是啊,一比較就知道還是在學校好。」
「打算讀博不?」靳平問道。
「如果黃老師評上了博導,就讀一個,不然的話,到時候再考慮吧。」
「研二不用上課了吧?」靳平又問道。
「不用了,就是找題目寫論文。」
小主,這個章節後面還有哦,請點擊下一頁繼續閱讀,後面更精彩!
「想想還真的挺舒服的。」靳平感慨了一句。
「有題目就好辦,不然到了研二就抓瞎,想死的心都有,我們一師兄說的。」
「你還差幾篇?」
「還差一篇大的,或者兩篇小的,不過黃老師建議我不要去投那種小的。」裴華笑著看了看孫彧。
「你寫唄,給我掛個名就行,潘智給我掛了個二作,我們系主任說給我一作對我來說毫無意義,除非是我獨力完成的。」孫彧也笑了笑。
「又有題目了?」靳平很是有些驚訝。
「反正就這些事情,資料成果實驗室都是共享的,題目要靠你自己發現,到時候別衝突了就行。」
「那會不會有明明是別人做的課題,有人搶先發了?」靳平問道。
「會的,但是那算是私人恩怨,人品問題,從規章上說,這並不違規。」裴華嘆了口氣,接著又說道:「黃老師還沒跟你們說吧,他是跟我說過的,他的實驗室不允許出現這樣的事情,他有的是辦法對付那樣的人。」
靳平笑笑,這樣他就放心了,他多少心裡已經有了個方向,打算跟黃老師商量一下,現在實驗室人少,不論是裴華還是夏衡,他都相信他倆不會幹搶發文章的事情,而孫彧和楊巋,就剛才孫彧說的,他現在發論文有什麼用。
其實靳平本來更擔心的是不小心搶了孫彧的論文,不過孫彧剛才雖然是和裴華說的他不在乎論文署名的事情,但顯然對他也是一樣的。
也算互相交了個底,至少靳平還是挺高興的,他不喜歡跟人勾心鬥角,這也是他讀研究生而不是出去工作的一個主要原因,雖然讀了研也不見得就能遠離人心爭鬥,但是終究他一個學生總不會是鬥爭的焦點。
而且他算是系主任的徒孫,以黃老師和周教授的關係,他只要抱好黃老師的大腿,這三年都不用擔心學習研究發論文之外的事情,靳平覺得。
「我明天後天應該都去不了實驗室了,周日晚上現在就還說不定。」喝完粥,出去的時候孫彧說道。
「楊巋明天去嗎?」裴華問道。
「他要是沒事的話,應該會去的。」
「行,走了。」裴華點頭應了一聲,孫彧和楊巋去不去實驗室他還真的沒什麼可說的,或者說,他們倆不用他管那麼多,也管不到,起碼到目前為止,孫彧和楊巋兩人的工作態度都沒得說,最關鍵的是,他倆真的能做出東西來。
「後來那兩個女生是什麼回事?」靳平這才找到機會問一問孫彧。
「李媛的師妹,看上哪個了?」孫彧哈的笑了起來。
靳平嘿嘿笑了笑,沒有回答這個問題,有緣的話再說。