Unix/Linux环境C编程入门教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建
1. openSUSE是一款优秀的linux。
2.选择默认虚拟机
3.选择稍后安装操作系统
4.选择linux opensuse
5. 选择默认虚拟机名称
6.设置处理器为双核。
7.内存设置为2G
8. 选择网络地址转换
9.设置IO控制器
10. 选择默认磁盘类型
11.创建一个新的虚拟磁盘
12.设置磁盘大小
13.选择路径保存虚拟磁盘
14. 完成虚拟机创建
15.设置虚拟机
16.选择opensuse镜像
17.开启虚拟机
18.虚拟机启动
19.安装opensuse
20.安装程序加载
21.系统启动中
22.系统初始化中
23.选择中文,开始安装
24.同意协议
25.单击下一步,这两步后续完成
26.单击下一步
27.同步NTP服务器
28.单击下一步
29.选择KDE桌面
30.设置账户密码
31.开始分析系统
32.开始安装软件
33.全选所有的选项
C/C++开发
Linux内核驱动开发
34.开始安装
35.安装中
36.安装进行时
37.安装完成进入界面
38.写一个C语言的helloworld
39.启动终端
40.进入路径
41.编译执行
42.写一个C++的代码1,cc
43. 打印语句,C++
44.打印出结果
45. 驱动的helloworld
#include <linux/init.h> //驱动初始化
#include <linux/module.h>//驱动模块
MODULE_LICENSE("Dual BSD/GPL");//遵循linux协议
static int hello_init(void)
{
printk(KERN_ALERT "Hello, world\n");//打印驱动信息
return 0;
}
static void hello_exit(void)
{
printk(KERN_ALERT "Goodbye, cruel world\n");//打印驱动信息
}
module_init(hello_init);//打印驱动初始化信息
module_exit(hello_exit);//打印驱动结束信息
46.q驱动的编译选项,注意all,clean下面的操作前面都要加tab键
pwd = $(shell pwd)
KERNEL_SRC = /lib/modules/$(shell uname-r)/build
obj-m := hello.o
module-objs := hello.o
all:
$(MAKE) -C $(KERNEL_SRC) M=$(PWD) modules
clean:
rm *.ko
rm *.o
47.编译驱动
48 超级管理员加载驱动
49 看到驱动输出
50 卸载驱动,并查看
51驱动退出。
52遍历所有驱动
53. 驱动程序list
54.
这个时候openSUSE CCPP以及Linux内核驱动开发环境搭建完成,希望大家认真实践。
Unix/Linux环境C编程入门教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建的更多相关文章
- Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建
1. openSUSE是一款优秀的linux. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXRjYXN0Y3Bw/font/5a6L5L2T/font ...
- Unix/Linux环境C编程入门教程(1) Solaris 11 64bit环境搭建
Unix/Linux版本众多,我们推荐Unix/Linux初学者选用几款典型的Unix/Linux操作系统进行学习. 本文就带大家来安装Solaris 11 64位并且配置好C/C++开发环境 本文所 ...
- Unix/Linux环境C编程入门教程(19)Red Hat Entetprise Linux 7.0环境搭建
位架构,包括英特尔X-86_64.Power和s390.动态定时能力将降低内核内部中断数量,Open vSwitch 2.0功能可调节虚拟机之间的流量.RHEL 7中默认的文件系统是XFS,包含了一个 ...
- Unix/Linux环境C编程入门教程(5) Red Hat Enterprise Linux(RHEL)环境搭建
Unix/Linux版本众多,我们推荐Unix/Linux初学者选用几款典型的Unix/Linux操作系统进行学习. 通过./a.out ./Y.out执行出结果,证明C++程序编译成功,也就说明li ...
- Unix/Linux环境C编程入门教程(4) Debian Linux环境搭建
Unix/Linux版本众多,我们推荐Unix/Linux初学者选用几款典型的Unix/Linux操作系统进行学习. 1.广义的Debian是指一个致力于创建自由操作系统的合作组织及其作品,由于Deb ...
- Unix/Linux环境C编程入门教程(3) Oracle Linux 环境搭建
Unix/Linux版本众多,我们推荐Unix/Linux初学者选用几款典型的Unix/Linux操作系统进行学习. 2010年9月,Oracle Enterprise Linux发布新版内核--Un ...
- Unix/Linux环境C编程入门教程(2) CentOS环境搭建
Unix/Linux版本众多,我们推荐Unix/Linux初学者选用几款典型的Unix/Linux操作系统进行学习. 本文就带大家来安装CentOS并且配置好C/C++开发环境,这是一款Linux. ...
- Unix/Linux环境C编程入门教程(32) 环境变量那些事儿
1. getenv() putenv()setenv()函数介绍 getenv(取得环境变量内容) 相关函数 putenv,setenv,unsetenv 表头文件 #include<stdli ...
- Unix/Linux环境C编程入门教程(22) C/C++如何获取程序的运行时间
1.问:知道程序运行时间我们可以做什么? 在<C++应用程序性能优化>一书中,如果大家读过相信大家一定对性能优化这一块非常上心,文中总是对优化前后的时间对比非常直观给我们一个感受. 那么我 ...
随机推荐
- 获取mysqli函数的值和字段名
<?php $mysqli=new mysqli("localhost", "root", "123456", "xsphp ...
- php遍历目录输出目录及其下的所有图片文件
在做网站的时候,需要给文章内所有的图片添加上logo,如何利用ThinkPHP来实现. ThinkPHP为我们很好的提供了图像处理类,给文章中的所有图片加上水印的思路,上传的图片文件都保存在一个文件夹 ...
- Stack的实现
public class MyStack<AnyType> { private AnyType [] theItems; private final int DEFAULT_CAPACIT ...
- skynet的流程2
http://blog.csdn.net/xiarendeniao/article/details/38613161 http://www.jiandan.ren/2015/06/skynet-hel ...
- yacc和lex在ubuntu上安装
在编译boa webserver源码的时候./configure的过程中遇到找不到yacc的提示. 采用以下失败: sudo apt-get install yacc lex 应替换为: sudo ...
- 关于Program Size
Program Size: Code=86496 RO-data=9064 RW-data=1452 ZI-data=16116 Code是代码占用的空间,RO-data是 Read Only 只读常 ...
- EventBus源码解析
用例 本文主要按照如下例子展开: //1. 新建bus对象,默认仅能在主线程上对消息进行调度 Bus bus = new Bus(); // maybe singleton //2. 新建类A(sub ...
- 支持https的压力测试工具
支持https的压力测试工具 测试了linux下的几种压力测试工具,发现有些不支持https,先简单总结如下: 一.apache的ab工具 /home/webadm/bin/ab -c 50 -n 1 ...
- JD-GUI on Ubuntu 13.04 64-bit
Java Decompiler (jd-gui) is a cute little tool I like using when working in Java. Unfortunately it o ...
- 海康威视研究院ImageNet2016竞赛经验分享
原文链接:https://zhuanlan.zhihu.com/p/23249000 目录 场景分类 数据增强 数据增强对最后的识别性能和泛化能力都有着非常重要的作用.我们使用下面这些数据增强方法. ...