标签:
【洪韶武 原创作品转载请注明出处 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 】
第四周 扒开系统调用的“三层皮”
一、本周学习内容总结
1.系统调用的“三层皮”
2.系统调用的意义及API与系统调用的关系
(1)系统调用的意义:
(2)API和系统调用:
3.用户态、内核态、中断
中断发生之后第一件事就是保存现场。保护现场就是进入中断程序,保存需要用到的寄存器的值,恢复现场就是退出中断程序,回复保存寄存器的数据。中断处理结束最后一件事就是恢复现场。
4.系统调用的参数传递方法
二、实验内容总结
以C语言和嵌入式汇编两种方式编写通过API进行系统调用的实例
选用20号系统调用getpid
三、小结
这周学习到系统调用的过程,及三个关键点:应用程序在用户态调用API函数,该函数将对应的系统调用号及参数保存,触发软中断,然后陷入内核态,中断向量根据系统调用号调用对应的内核函数,内核函数执行完毕后将结果存放的eax中并返回给程序,程序返回的用户态。并通过实验进行了系统调用实例。
标签:
原文地址:http://www.cnblogs.com/5219hsw/p/5297639.html