Linux
文章平均质量分 73
長懜
这个作者很懒,什么都没留下…
展开
-
字符设备驱动-Linux驱动学习(5)
【学习笔记】一、申请字符类设备号1、字符设备和杂项设备的区别(1)设备号的不同:杂项设备的主设备号是固定的,固定为10,而字符类设备需要我们自己或者系统来给我们分配。(2)设备节点的生成方式不同:杂项设备可以自动生成设备节点,而字符设备需要我们自己生成设备节点。2、两种方法注册字符类设备号(1)静态分配设备号需要明确知道系统里面哪些设备号没有被使用,然后手动分配。函数定义在linux-4.9.268/include/linux/fs.hextern int register_chrdev_转载 2021-07-14 22:53:23 · 317 阅读 · 0 评论 -
在虚拟开发板上加载驱动-Linux驱动学习(4)
【学习笔记】驱动代码file_operations.c#include <linux/init.h>#include <linux/module.h>//杂项设备驱动需要增加两个头文件#include <linux/miscdevice.h>#include <linux/fs.h>//传输函数头文件#include <linux/uaccess.h>int misc_open(struct inode *inode, str转载 2021-06-03 21:18:04 · 178 阅读 · 0 评论 -
(补充)交叉编译器的安装和使用
交叉编译器的安装和使用环境Ubuntu 20.04 LTS前面教程提到了交叉编译器,忘了写具体的安装和配置方式,在这里补充一下gcc编译器编译的程序只能在x86环境下运行,而不能在arm上运行gcc运行方式直接写一个程序hello.c然后输入命令sudo gcc hello.c #编译器会自动生成a.out可执行文件sudo gcc hello.c -o hello #编译成hello可执行文件./a.out 或者 ./hello 运行程序file a.out #查看文件运行环境信原创 2021-06-01 12:17:34 · 532 阅读 · 0 评论 -
VMware Ubuntu使用Qemu模拟开发板
1、VMware Ubuntu 20.04 LTS 使用Qemu虚拟机u-boot启动或者配合busybox模拟ARM开发板这里提供相关工具的下载地址Linux内核下载地址busybox下载地址Qemu下载地址u-boot下载地址文中使用的版本为Linux-4.9.268、busybox-1.33.0、qemu-5.2.0、u-boot-2021.01-rc4版本差别不大,应该都没有问题的一、busybox制作根目录,通过镜像启动linux内核模拟ARM板1、编译linux内核编译条件:原创 2021-05-26 18:49:03 · 3991 阅读 · 1 评论 -
应用层和内核层的数据传输-Linux驱动学习(3)
应用层和内核层的数据传输【学习笔记】1、应用层和内核层数据传输常用的函数在Linux中,文件对应的操作有:打开、关闭、读写,同样与文件类似,设备节点对应的操作有:打开、关闭、读写如果我们在应用层使用系统IO对设备节点进行打开、关闭、读写等操作会发生什么?(1)当我们在应用层对设备节点进行read操作时,就会触发驱动里边的read这个函数。ssize_t(*read)(struct file*, char_user*, size_t, loff_t*);#这里(*read)是函数名字,可以自定义,转载 2021-05-19 11:28:23 · 911 阅读 · 0 评论 -
Shell编程
Shell编程【学习笔记】认识Shell脚本Shell 脚本(Shell Script)与Windows/DOS 下的批处理相似,也就是将各类命令预先放入其中,方便一次性执行的一个程序文件,主要用以方便管理员进行设置或者管理。但是Shell 脚本比Windows 下的批处理更强大,比用其他编程程序编辑的程序效率更高,毕竟它使用了Linux/UNIX 下的命令。Shell脚本的基本语法开头可以使用任何一种编辑器来编辑gedit、kedit、emacs、vi等等#!/bin/bash #表示系统转载 2021-05-11 20:06:31 · 205 阅读 · 0 评论 -
杂项设备驱动--Linux驱动学习(2)
杂项设备驱动简介作用Linux杂项驱动出现的意义在于:有很多简单的外围字符设备,它们功能相对简单,一个设备占用一个主设备号对于内核资源来说太浪费。所以对于这些简单的字符设备它们共用一个主设备号,不同的设备使用不同的次设备号.特点杂项设备是字符设备的一种,可以自动生成设备节点系统中有很多杂项设备,可以输入cat/proc/misc命令来查看杂项设备比字符设备代码简单杂项设备的主设备号是相同的,固定均为10,次设备号是不同的,主设备号相同就可以节省内核的资源主设备号和次设备号:主设备号在L转载 2021-05-11 20:07:56 · 285 阅读 · 0 评论 -
Linux驱动简介和开发流程--Linux驱动学习(1)
Linux驱动简介和开发流程【学习笔记】Linux 驱动的分类Linux三大设备驱动1、字符设备驱动IO的传输过程是以字符为单位的,没有缓冲。比如I2C,SPI都是字符设备2、块设备驱动IO传输过程中是以块为单位的。跟存储相关的,都属于块设备,比如:tf卡3、网络设备驱动与前两个不一样,是以socket套接字来访问的。其中,理解和掌握字符设备驱动的概念最重要,因为在工作中我们遇到大部分都是字符设备驱动的组成驱动分为四个部分(1)头文件(2)驱动模块的入口和出口(3)声明信息(转载 2021-05-11 20:07:36 · 245 阅读 · 0 评论 -
Linux编程环境
Linux编程环境【学习笔记】vi编辑器vi 文件名 #进入文件编辑模式一般模式: yy #复制当前行 y数字y #复制多少行内容 p #箭头移动到目的行粘贴 u #撤销上一步 dd #删除当前行 d数字d #删除光标后多少行 x #删除一个字母(相当于delete) X #删除一个字母(相当于backspace)转载 2021-05-11 19:14:09 · 133 阅读 · 0 评论 -
windows和ubuntu更换下载源
windows下换源(python环境/conda环境)豆瓣源pip install [软件名] -i https://pypi.douban.com/simple清华源pip install [软件名] -i https://pypi.tuna.tsinghua.edu.cn/simple创建虚拟环境conda create -n cpu_avx2 python==3.7conda envs 虚拟环境中切换清华源conda config --add channels https://原创 2021-04-30 14:50:12 · 415 阅读 · 1 评论 -
win10和ubuntu双系统,使用AOMEI分区后启动项损坏,只显示grub>
观前提示先阅读本提示,方法不合适提前左转,以免浪费各位宝贵时间【本教程直接安全的删掉了ubuntu系统,如果ubuntu有重要文件,建议还是修复ubuntu启动项。】【本文附带一些常用软件链接:AOMEI分区助手、右键添加DOS、MbrFix64.exe启动项修复工具】【网上修复的教程比较杂乱,遇到的问题跟我的都有些差别,尝试了不少方法都没有修复,反正ubuntu没有重要的文件,索性就直接删掉用虚拟机。】【祝君好运,找到适合自己的方法】遇到问题如图分区后,打开电脑,只出现grub>(如图原创 2021-04-28 13:39:18 · 964 阅读 · 0 评论 -
Linux入门级常用命令总结
学习笔记,便于查找相关命令,供入门级使用。总结来源于Linux基础入门常用快捷键1)ctrl + c:停止进程2)ctrl+l:清屏3)ctrl + q:退出4)上下键:查找执行过的命令5)ctrl +alt:linux和Windows之间切换常用命令文件目录类pwd:显示当前工作目录ls:列出目录的内容ls -l #显示详细信息ls -a #显示目录全部内容mkdir:创建一个新的目录mkdir -p src/file #创建多级文件夹rmdir:删转载 2021-04-22 19:10:01 · 160 阅读 · 0 评论