操作系统实训总结

操作系统实训总结

放假回到家,看到这几个周实训做的工作,以及散乱的文档与资料,觉得应该整理一下,面对操作系统实训,其实感悟是很多的,我常说操作系统是精神层面的,非应用层面,学好操作系统,再来应用,便有了一个高度,在原理层面上有了了解,做起事情来才会显得合理,解决起问题来才能有思路。

本次实训,在linux系统进行,按照课本讲解,学习理论,做实验,再分析。

实训之前:你懂得操作系统内核吗?你知道进程间如何通信吗?proc是啥?内存,内存是如何管理的?信号量,在真正编程时咋用,难道还是伪代码?共享内存是啥?设备驱动程序到底是怎么回事?

实训之后:

1、操作系统是分内核空间和用户空间的。

 

    程序,我们不仅可以写应用程序,通过系统调用操作内核,还可以写linux内核模块,放入内核直接运行。

    系统调用是操作系统提供给应用程序使用操作系统服务重要接口,也正是通过系统调用机制,操作系统屏蔽了用户直接访问操作系统内核的可能性。幸运的是,Linux操作系统提供了LKM机制可以使我们在内核空间工作。

 

2、proc伪文件系统

正如上述所说,Linux内核模块可以使我们在内核空间工作,一个重要组成部分就是proc伪文件系统。它为用户提供了动态操作Linux内核信息的接口,是除系统调用外另一个重要的Linux内核空间和用户空间交换数据途径。与系统调用主要提供函数级的服务不同,proc机制更侧重于管理。

proc动态改变、只存在内存中。主要包含以下信息:与进程相关的目录,通用系统信息,网络信息,系统控制信息。

使用seq_file机制可以正确读写proc伪文件的信息。seq_file是内核空间中proc和内核模块之间的操作机制。

seq_file机制对proc伪文件的操作主要包括两个层面:首先是对proc伪文件进行打开、读、写等文件级别的操作,使用struct file_operations结构体变量进行定义;其次是对proc伪文件记录级别的操作,也就是如何遍历并读取序列中的各个记录,使用struct seq_operations结构体变量进行定义,包含start、show、next和stop这四个函数。

                                                          

   3、进程间通信

    (方法有很多,

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值