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结束。

  • 相关阅读:
    元组,字典
    python字符串
    tensorflow 学习笔记
    tensorflow example1
    python第二章(2)列表
    python3.5学习第二章(1)标准库,bytes
    类加载过程
    数据值与地址值
    类的初始化与实例化顺序
    SpringCloudBus
  • 原文地址:https://www.cnblogs.com/20135316wjq/p/5320480.html
Copyright © 2011-2022 走看看