“这板支持DMA吗?”杨岿似乎也想到了什么。
“支持,显然软驱和硬盘之间就是通过DMA传输的,”孙彧翻了一下使用手册和编程指南,想了想,然后又说道:“唔,问题又到了驱动程序上了,显然没有发DMA请求。”
“那现在主要就是两个问题,一个是存储卡驱动没有发DMA请求,一个是内存页面管理的参数需要调整?”裴华说道。
“唔,我先解决内存页面管理的问题,驱动没有发DMA请求这个问题有点古怪,我得检查一下我的系统调用是什么回事。”
事情就是这样,一个问题能牵扯出许多问题,不过能找到问题,也算是收获,孙彧决定明天跟老师汇报一下,以及找时间去跟潘智交流交流,看看他那边是个什么情况。
找老师汇报并不是要老师帮忙解决问题,这些问题老师也并不能帮着解决,一般老师就是提供一些解决问题的方向和思路参考,而孙彧汇报的时候也把自己的解决思路一并说了,不论是李老师,还是带操作系统实验的罗老师,都认为他可以先按照自己的思路做下去看看,毕竟从理论的角度看,孙彧的做法还是合理的。
然后孙彧发现本来页面大小他在pc机上设置的是4K,但不知道为什么交叉编译的时候他改成了1K,真是莫名其妙,孙彧也已经忘记了当时是怎么想的,至于调度算法,一时半会儿也看不出什么问题来,只好先不管它,但是为什么会改成2K这个问题,孙彧觉得没有就是随便改的那么简单。
所有的常数都是宏定义的,不存在一个地方改了另外的地方没改,改了页面大小,相应的页表项大小,页表大小也会变,不过不管怎么说,孙彧先把页面大小改回了4K。
趁重新编译的功夫,孙彧慢慢思索着当初是怎么想的,应该是为了做个实验,4K的页面可能有些大,为了减少内碎片,所以他改成了1K,打算试试看效果怎么样,效果看来挺显着,进程稍微多了那么两三个,就开始抖动了。
这个问题是有理论根据的,至于是不是改成2K再试试,孙彧决定先不费那神,直接改回4K,先解决存储卡驱动没有发出DMA中断的问题。
显然当初在电脑上测试的时候,存储卡和硬盘之间的数据传输是通过了DMA的,不然通不过那时的验收,于是差别就在于系统调用上了,现在驱动调用的系统调用是孙彧自己实现的,而那时调用的是DOS的。
那就看代码咯,孙彧发了一会儿呆,然后看了看时间,已经快5点了,时间过得可真快。
“先回去了,晚上再过来。”孙彧站起身,东西都不用带回去,下次下午过来的话,就穿运动服好了,可以直接去跑步。
“怎么样?”裴华问道。
“页面参数我改过,本来是想测一下找个最优配置的,我先改回来看看,晚上过来检查一下系统调用的代码,看看什么回事。”
“你现在板上的程序是改回去了的吧?”
“是的。”
“那行,你那个参数在哪里改?打算怎么改?我来测一下。我等下要到研究生饭堂那边吃饭,吃完就回来,你们晚上要来的话直接过来就行,我肯定在的。”裴华说道。
“就这里,我打算测一下4K,2K,1K都有什么变化的。”
“好,我试一下。”
有点晚了,孙彧便没有去跑步,吃过饭去找李媛,免不了被李媛盘问了一番。
两人交往到现在,这种程度的小脾气,对于孙彧来说,就当是李媛在跟他调情撒娇了,因为李媛真的从来没有跟孙彧撒过娇。
“你晚上有什么事不?我等下就要去实验室了。”把李媛拉到路边的偏僻处,控制住她,孙彧这才问道。
“