Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

大家好,又见面了,我是全栈君。


1. openSUSE是一款优秀的linux。

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

2.选择默认虚拟机


Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

3.选择稍后安装操作系统

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

4.选择linux  opensuse


5. 选择默认虚拟机名称

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

6.设置处理器为双核。

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

7.内存设置为2G

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

8. 选择网络地址转换

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

9.设置IO控制器

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

10. 选择默认磁盘类型

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

11.创建一个新的虚拟磁盘

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

12.设置磁盘大小

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

13.选择路径保存虚拟磁盘

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

14. 完毕虚拟机创建

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

15.设置虚拟机

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

16.选择opensuse镜像

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建


Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

17.开启虚拟机

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

18.虚拟机启动

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

19.安装opensuse

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

20.安装程序载入

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

21.系统启动中

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

22.系统初始化中

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

23.选择中文,開始安装

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

 

24.允许协议

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

 

25.单击下一步。这两步兴许完毕

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

26.单击下一步

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

27.同步NTPserver

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

28.单击下一步

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

 

29.选择KDE桌面

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

 

30.设置账户password

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

31.開始分析系统

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

 

32.開始安装软件

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

33.全选全部的选项

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

C/C++开发

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

Linux内核驱动开发

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

34.開始安装

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

 

35.安装中

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

36.安装进行时

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

37.安装完毕进入界面

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

38.写一个C语言的helloworld

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

39.启动终端

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

40.进入路径

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

 

41.编译运行

 

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

 

42.写一个C++的代码1,cc

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

 

43. 打印语句,C++

 

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

44.打印出结果

 

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

45. 驱动的helloworld

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

#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键

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

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.编译驱动

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

48 超级管理员载入驱动

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

49 看到驱动输出

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

50 卸载驱动,并查看

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

51驱动退出。

Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

52遍历全部驱动

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

 

53. 驱动程序list

 

 Unix/Linux环境C编程新手教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

54.

  这个时候openSUSE CCPP以及Linux内核驱动开发环境搭建完毕,希望大家认真实践。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115525.html原文链接:https://javaforall.net

(0)
上一篇 2022年2月3日 上午10:00
下一篇 2022年2月3日 上午10:00


相关推荐

  • gitlab找回已删除的分支

    gitlab找回已删除的分支清理分支时 不小心删除了还没合并进主分支的特性分支 最终使用 git 恢复分支的方法成功找回代码 这里直接使用参考文章内容进行说明 作为笔记备份 以下内容摘自 https www jianshu com p 8f8b 找到该分支的最后一次提交的 commitId 在 gitlab 的 activity 菜单 2 在项目代码文件夹中打开 git 执行 gitcheckout bbranchnamec push 到远程分支

    2026年3月17日
    2
  • kafuka生产者和消费者及配置

    kafuka生产者和消费者及配置#kafka生产者配置#kafka集群kafka.bootstrap.servers=ip:端口#发送端确认模式kafka.acks=all#发送失败重试次数kafka.retries=10#批处理条数kafka.batch.size=16384#延迟统一收集,产生聚合,然后批量发送kafka.linger.ms=100#批处理缓冲区kafka.buffer.memo…

    2022年6月3日
    53
  • manus网页版入口在哪-manus网页版入口怎么找

    manus网页版入口在哪-manus网页版入口怎么找

    2026年3月15日
    3
  • 机不可失的下一句是,你得伸手去抓

    机不可失的下一句是,你得伸手去抓

    2026年3月12日
    2
  • redis和zk实现分布式锁有什么区别_redis分布式锁和zk分布式锁区别

    redis和zk实现分布式锁有什么区别_redis分布式锁和zk分布式锁区别前言本文介绍下分布式锁的一个使用场景分享本文的缘由是因为今天在写代码时需要处理一个原子性问题,场景是:业务功能需要先查询数据,再根据数据判断是否要更新数据,在这个查询+更新的过程必然会存在高并发下的原子性问题那么如何解决这个问题呢,那么就要说到我们的主角:分布式锁了分布式锁介绍分布式锁:即在多集群多节点环境下确保只有一个线程可以拿到锁,防止并发出现的问题,类似于synchronized,只不过synchronized不能处理多节点的问题解决上述问题的一种解决方式就是使用分布式锁,虽然性能会比较低

    2025年10月2日
    5
  • DenseNet简介

    DenseNet简介论文传送门:https://arxiv.org/pdf/1608.06993.pdfCNN模型的发展十分火热,自LeNet提出以来,涌现了一批优秀的CNN模型。LeNet是CNN的开山之作,标志着CNN真正的提出。2012年AlexNet夺得ILSVRC2012的冠军,深度学习大火。之后又涌现了VGG、GoogleNet、ResNet等,其中ResNet可谓是一个里程碑式的CNN模型。本文介…

    2026年4月18日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号