• Linux内核实验作业四


    实验作业:使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用

    20135313吴子怡.北京电子科技学院

    【第一部分】使用库函数API来获取用户标识号。库函数为getuid() 

    代码如下:

    编译运行之后,将用户id号1000打印输出在屏幕上。

     

    【第二部分】使用汇编方式触发系统调用来获取用户标识号。库函数依旧为getuid() 

    代码如下:

    可以看出,打印出来的用户id和之前的一样都是1000.

    【第三部分】系统调用的工作机制学习总结

    我认为系统调用的工作机制就是系统调用经过封装包装成为一个封装例程,然后交由Libc库,被Libc库引用保留,然后Libc库再将其提供给API去用。用户通过API间接地使用系统调用各种功能。即是说,系统调用是通过库函数封装的内核态的功能操作。

    它的三层皮是:API、中断向量、中断服务程序。

    【第四部分】附录

    学习过程笔记详见:http://www.cnblogs.com/paperfish/p/5283727.html

    ==========================================================

    作者:吴子怡

    学号:20135313

    原创作品转载请注明出处

    《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000

  • 相关阅读:
    JVM类加载的过程
    接口文档设计
    代码规范及CodeReview要点
    Linux权限
    Linux文件
    UltraEdit编辑器基础技巧
    Android环境配置
    JDK 环境配置
    xml没有提示解决办法<eclipse>
    mysql事务实例
  • 原文地址:https://www.cnblogs.com/paperfish/p/5284606.html
Copyright © 2020-2023  润新知