当前位置: 首页 > news >正文

玉溪市住房城乡建设局网站创意设计

玉溪市住房城乡建设局网站,创意设计,外贸公司网站,php网站开发事例全部学习汇总: GreyZhang/g_unix: some basic learning about unix operating system. (github.com) 我觉得看了几个MIT的课程之后让我觉得我的大学四年有点浪费时光,看起来MIT的课程的确是很有饱满度。 这里,再整理一份课程中的作业要求。 …

         全部学习汇总: GreyZhang/g_unix: some basic learning about unix operating system. (github.com)

         我觉得看了几个MIT的课程之后让我觉得我的大学四年有点浪费时光,看起来MIT的课程的确是很有饱满度。

         这里,再整理一份课程中的作业要求。

家庭作业:xv6 CPU alarm

         在本练习中,您将向xv6添加一个功能,该功能在进程使用CPU时间时定期提醒进程。这对于那些想限制占用CPU时间的计算绑定进程,或者对于那些想计算但又想采取一些周期性行动的进程来说,可能很有用。更一般地说,您将实现用户级中断/故障处理程序的原始形式;例如,您可以使用类似的方法来处理应用程序中的页面错误。

         您应该添加一个新的alarm(interval, handler)系统调用。如果应用程序调用alarm(n, fn),那么在程序消耗的CPU时间的每n个“滴答”之后,内核将导致调用应用程序函数fn。当fn返回时,应用程序将从停止的位置恢复。在xv6中,tick是一个相当任意的时间单位,由硬件计时器生成中断的频率决定。

         您应该将以下示例程序放在alarmtest.c中:

         该程序调用alarm(10,periodic),要求内核每隔10次强制调用periodic(),然后挂起一段时间。在内核中实现alarm()系统调用后,alarmtest应该会产生如下输出:

         (如果您只看到一个“alarm!”,请尝试将alarmtest.c中的迭代次数增加10倍。)

         提示:您需要修改Makefile,以便将alarmtest.c编译为xv6用户程序。

         提示:要放入user.h的正确声明是:

         提示:您还必须更新syscall.h和usys.S,以允许alarmtest调用报警系统调用。

         提示:您的sys_alarm()应该将报警间隔和指向处理程序函数的指针存储在proc结构中的新字段中;见proc.h。

         提示:这里有一个可用的sys_alarm():

         将其添加到syscall.c中,并将SYS_ALARM的条目添加到该文件中的syscalls数组中。

         提示:您需要跟踪从上一次调用(或直到下一次调用)到进程的alarm处理程序已经传递了多少节拍;为此,您还需要在struct proc中添加一个新字段。您可以在proc.c中的allocproc()中初始化proc字段。

         提示:每一次滴答声,硬件时钟都会强制中断,在trap()中按T_IRQ0+IRQ_TIMER处理;你应该在这里添加一些代码。

         提示:只有当有进程在运行并且计时器中断来自用户空间时,才需要操作进程的alarm信号;你想要这样的东西

         提示:在您的IRQ_TIMER代码中,当进程的alarm间隔到期时,您希望让它执行其处理程序。你是怎么做到的?

         提示:你需要安排一些事情,这样当处理程序返回时,进程就会恢复执行它停止的地方。你怎么能做到这一点?

         提示:您可以在alarmtest.asm中看到alarmtest程序的汇编代码。

         提示:如果你告诉qemu只使用一个CPU,你可以通过运行

         如果您的解决方案在调用处理程序时不保存调用方保存的用户寄存器,那就没问题了。

         可选的挑战:1)保存和恢复调用方保存的用户注册到处理程序的调用。2) 防止对处理程序的重入调用——如果处理程序尚未返回,请不要再调用它。3) 假设你的代码没有检查tf->esp是否有效,那么就对内核进行安全攻击,利用你的alarm处理程序调用代码。

         小结:这就是这一次的作业要求,这里面新引入了一个叫做alarm的概念。而这个概念其实在我现在使用的RTOS中也是有的,至于这个Alarm在底层的实现机制是什么样子的,之前的确是没有研究过。借着这个机会,需要对此进行一个更加透彻的学习分析。

http://www.tj-hxxt.cn/news/124341.html

相关文章:

  • q王商城 网站是怎么做的优化方案电子版
  • 做网站线长沙seo霜天
  • 深圳搜索排名优化南宁seo外包靠谱吗
  • 公司做网站要三千多吗淮北网站建设
  • 网站建设文献翻译推广普通话手抄报简单漂亮
  • 网站做移动端sem是指什么
  • 现在网站主怎么做淘宝客宁波网站推广大全
  • 怎样做同性恋女视频网站宣传推广网络推广
  • 网站首页做301互联网项目推广是什么
  • 西安网站建设云阔网络百度一下百度主页官网
  • 做影视外包的网站微信小程序
  • 传奇免费网站建设seo关键技术有哪些
  • 自助提卡网站怎么做关键词搜索指数
  • 男女做受网站安新seo优化排名网站
  • 自己的网站怎么做网站seo技术教程
  • 网站后台进不去的原因青岛网站建设公司
  • 网站开发属于什么专业软件开发公司网站
  • 外贸视频网站如何进行网站性能优化?
  • 用软件做seo网站关键词推广网络运营师资格证
  • 云服务器 能用来做网站吗江门搜狗网站推广优化
  • 深圳视频网站开发代写文章多少钱
  • 垂直门户网站有哪些企业培训课程ppt
  • 域名注册网站系统网站优化培训学校
  • 网站换服务器有影响吗汕头网站设计
  • 南阳建网站企业seo最强
  • 南昌购物网站制作开发网站的流程是
  • 重庆网站备案需要几天北京搜索引擎优化主管
  • 一般做网站图是多大的像素网页设计费用报价
  • 电子商务网站设计公司app开发费用标准
  • 门户网站制作平台山东进一步优化