首先是 在GDT中添加 系统调用的内容:
然后是汇编中实现 syscall_hander
然后是使用C语言函数 实现在屏幕上显示字符。
然后是在 任务中调用这个函数。
然后 sys_show 去调用 系统调用。
在进行系统调用前需要 保存现场。
系统调用之后需要 释放现场。
为了保证在系统调用所调用的函数的正常,需要在系统调用调用函数之前,需要再次将参数压入栈中。
系统调用 调用完函数之后,需要在释放一下 之前压入的参数
然后是函数的返回。这里不是很理解。
首先是 在GDT中添加 系统调用的内容:
然后是汇编中实现 syscall_hander
然后是使用C语言函数 实现在屏幕上显示字符。
然后是在 任务中调用这个函数。
然后 sys_show 去调用 系统调用。
在进行系统调用前需要 保存现场。
系统调用之后需要 释放现场。
为了保证在系统调用所调用的函数的正常,需要在系统调用调用函数之前,需要再次将参数压入栈中。
系统调用 调用完函数之后,需要在释放一下 之前压入的参数
然后是函数的返回。这里不是很理解。