我理解的是 虚拟机里面的 linux 想和 笔记本通讯 或者LINUX 系统能与外网通
下列是我说的2种方法:
1:桥接 步骤:在虚拟机里面设置linux 系统的网卡 模式为VMNET 0
LINUX 系统的IP 配置为DHCP (确保你的路由器 开启DHCP 功能)
关闭笔记本的防火墙 和linux 的Iptables (这样设置你的LINUX 就能和笔记本通讯 且能访问 internet)
2:如果单纯是 与本机通讯 在虚拟机里面设置linux系统的网卡模式为vmnet 1
IP可以手动指定 如:IP 192.168.11.11 掩码 255.255.255.0 网关 192.168.11.12 然后在笔记本 的网络里面设置VMNET 1 的IP 手动指定为:192.168.11.12 255.255.255.0 192.168.11.11 经过上列设置 即可通讯 如有疑问留下扣扣号 我远程你
驱动程序一般是通过模块注入内核,用字符驱动程序举个例子:1.编写字符驱动程序需要在内核中注册设备和中断程序,还有file_ops里面的open,read,release等函数
2.注册成功后在/proc/device文件里面可以看到你注册的设备名称和主设备号,/proc/interrupt文件中可以看到注册的中断
3.为设备创建文件节点,mknod /dev/char_dev_test c 主设备号 次设备号,于是就在/dev/里面生成一个char_dev_test 设备文件
4,应用程序通过文件 *** 作函数,比如open,read等 *** 作char_dev_test 文件
eg: FILE* p=open("/dev/char_dev_test","rb")
if(p==NULL) { printf("error,can't open dev file!")return -1}
char buf[1024]
read(p,buf,size_t)
//其中open是调用的注册进入内核的file_ops的open函数,read是调用的file_ops的read函数,里面一般有copy_to_user,将内核数据复制到用户空间,也就是复制到了buf中。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)