发布时间:2012-12-24 10:07:13
驱动层是不可以调用标准库的,那么想要在驱动中直接写磁盘文件要怎么办?一、到底可不可行? 这里的文章,详细地追踪了系统调用的实现,并提供了一种直接访问的方法。 总结如下: 1.在系统调用open的流程中,会调用getname()函数,里面会使用get_fs()判断文件名字符串的地址,如果属于3~4G,也就是内核空间,返回错误。是用户空间的,则拷贝到内核空间。在系统调用read的流程中,会调用vfs_read(),并判断写入的文本是否来自用户空间,如果不是,返回错误,如果是,则拷贝到内核空间。在系统调用write的流程中,会调用vfs_wri......【阅读全文】