于是,周三了,跑步的时候孙彧跟李媛说他晚上还要去实验室干活,问她跟不跟着一起。
“我们明天考核,今天就不去了。”
“就一科吗?”
李媛嗯了一声,不过不管李媛是不是跟着孙彧去实验室,他俩都不需要再去图书馆抢位置,晚饭后的空余时间还是挺多的,天色黑的又晚,蚊子还没有那么猖獗,两人于是在东湖边看了一阵荷花。
毕竟不是周末,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点半了。
“好吧,走吧。”孙彧点点头,把东西往书包里收好,站起身:“我们先走了。”
“一起吧。”裴华看看靳平和夏衡。
“那走吧。”两人应道。
路上又碰到了张薇薇和于熙,于是四位女生一路自己往女生宿舍那边去了,三位男生则是拐到了白兰餐厅,忙活了一晚上,无论如何也得补充一下营养的。
还有一个月大学生活就要结束,靳平不免有些唏嘘,他大二的时候还有些浑浑噩噩的,到了大三才知道自己应该做什么,幸好大一大二的时候依着惯性没有掉下去,不然现在......靳平想了想,发现其实也没什么,不外乎去找个工作而已。
裴华对靳平的说法倒是有些不同看法,他当年也是那么过来的,现在读了快一年的研究生,跟以前的同学小聚,一个个都很羡慕他现在的生活,毕竟再过两年毕业之后,就算跟他们做了同样的工作,一则收入肯定会高一些,二则在学校多呆了三年,他们都很怀念在学校的日子。
“你这看法跟刚开始的又不一样了啊。”孙彧于是笑道。
“是啊,一比较就知道还是在学校好。”
“打算读博不?”靳平问道。
“如果黄老师评上了博导,就读一个,不然的话,到时候再考虑吧。”
“研二不用上课了吧?”靳平又问道。
“不用了,就是找题目写论文。”
“想想还真的挺舒服的。”靳平感慨了一句。
“有题目就好办,不然到了研二就抓瞎,想死的心都有,我们一师兄说的。”
“你还差几篇?”
“还差一篇大的,或者两篇小的,不过黄老师建议我不要去投那种小的。”裴华笑着看了看孙彧。
“你写呗,给我挂个名就行,潘智给我挂了个二作,我们系主任说给我一作对我来说毫无意义,除非是我独力完成的。”孙彧也笑了笑。
“又有题目了?”靳平很是有些惊讶。
“反正就这些事情,资料成果实验室都是共享的,题目要靠你自己发现,到时候别冲突了就行。”
“那会不会有明明是别人做的课题,有人抢先发了?”靳平问道。
“会的,但是那算是私人恩怨,人品问题,从规章上说,这并不违规。”裴华叹了口气,接着又说道:“黄老师还没跟你们说吧,他是跟我说过的,他的实验室不允许出现这样的事情,他有的是办法对付那样的人。”
靳平笑笑,这样他就放心了,他多少心里已经有了个方向,打算跟黄老师商量一下,现在实验室人少,不论是裴华还是夏衡,他都相信他俩不会干抢发文章的事情,而孙彧和杨岿,就刚才孙彧说的,他现在发论文有什么用。
其实靳平本来更担心的是不小心抢了孙彧的论文,不过孙彧刚才虽然是和裴华说的他不在乎论文署名的事情,但显然对他也是一样的。
也算互相交了个底,至少靳平还是挺高兴的,他不喜欢跟人勾心斗角,这也是他读研究生而不是出去工作的一个主要原因,虽然读了研也不见得就能远离人心争斗,但是终究他一个学生总不会是斗争的焦点。
而且他算是系主任的徒孙,以黄老师和周教授的关系,他只要抱好黄老师的大腿,这三年都不用担心学习研究发论文之外的事情,靳平觉得。
“我明天后天应该都去不了实验室了,周日晚上现在就还说不定。”喝完粥,出去的时候孙彧说道。
“杨岿明天去吗?”裴华问道。
“他要是没事的话,应该会去的。”
“行,走了。”裴华点头应了一声,孙彧和杨岿去不去实验室他还真的没什么可说的,或者说,他们俩不用他管那么多,也管不到,起码到目前为止,孙彧和杨岿两人的工作态度都没得说,最关键的是,他俩真的能做出东西来。
“后来那两个女生是什么回事?”靳平这才找到机会问一问孙彧。
“李媛的师妹,看上哪个了?”孙彧哈的笑了起来。
靳平嘿嘿笑了笑,没有回答这个问题,有缘的话再说。