zoukankan      html  css  js  c++  java
  • 20135316Linux内核学习笔记第五周

    20135316王剑桥《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000
    一、给MenuOS增加time和time-asm命令
    0.更新menu代码到最新版本
    1.在main函数中增加MenuConfig
    2.增加对应点time函数和timeasm函数
    3.Make rootfs
    二、在实验楼中增加内核系统调用
    1.先执行rm menu -rf,强制删除原有的menu文件夹,使用git命令更新menu代码至最新版

    2.在main函数中增加MenuConfig和详细函数

    3.Make rootfs

    4.使用help查看系统调用

    5.调试过程

    三、分析从system_call开始到iret结束之间的整个过程
    ①Entry(system-call)
    ②save-all保护现场
    ③call *sys-call-table(,%eax,4),调用分度表,找到对应的系统调用
    ④syscall- exit检查是否需要跳转,若不需要,执行⑤,需要执行⑥
    ⑤restore-all恢复现场,然后iret结束
    ⑥work-pending然后进行work-notifysig处理信号(或者work-resched处理调度,然后call schedule)最后返回restore-all,然后iret结束。

  • 相关阅读:
    四则运算
    Git工具学习整理
    java拦截器中使用的动态代理
    Java动态代理
    Git常用命令
    Maven学习
    ruby调用jenkins API使用
    c#认证考试第四章(国庆作业及其总结)
    C#认证考试第三章
    c#认证考试练习题目
  • 原文地址:https://www.cnblogs.com/20135316wjq/p/5320480.html
Copyright © 2011-2022 走看看