
Linux
文章平均质量分 89
本专栏是Linux相关的文章,主要是一些实验操作,涉及驱动编写以及Linux中常遇到的问题!
西岸贤
文章自古无凭据,惟愿朱衣暗点头!
展开
-
Linux进程间通信
本文介绍Linux下的进程通信,包括管道方式、信号方式、共享内存方式、消息队列方式、信号灯方式,文中对于各种方式下使用到的函数做了详细说明,同时给出了代码示例和运行结果。原创 2024-03-31 16:12:51 · 1263 阅读 · 0 评论 -
WSL升级为WSL2
本文介绍将WSL升级为WSL2的具体步骤。原创 2024-03-28 13:23:19 · 4256 阅读 · 0 评论 -
多进程编程及相关函数
本文介绍多进程相关的知识,主要内容是进程的创建、wait函数、exec函数、system函数等,文中提供了简单的代码示例帮助理解。原创 2024-03-25 16:52:15 · 841 阅读 · 0 评论 -
多线程和线程同步
本文的主要内容是介绍进程和线程的区别,线程的创建、退出、回收、分离、取消等操作函数,线程同步中互斥锁、读写锁、条件变量和信号量的使用。原创 2024-03-23 12:55:00 · 966 阅读 · 0 评论 -
Linux下网络通信及socket编程
本文的内容是Linux下网络通信及socket编程,文章简单介绍了网络通信的知识,然后介绍了与socket相关的函数,并通过socket实现了服务器与客户端的简单通信。原创 2023-12-13 15:11:38 · 621 阅读 · 0 评论 -
Linux下input子系统
本文的内容是Linux下输入子系统的介绍,文章中对用到的函数、注册的过程都做了相应的说明,并通过一个按键的例子介绍了输入子系统的具体使用。原创 2023-11-04 21:13:09 · 998 阅读 · 0 评论 -
信号、进程、线程、I/O介绍
本文对信号、进程、线程、I/O等做简单介绍,涉及到进程通信、线程同步、I/O等具体内容,对于其中一些内容,文章中给出了代码示例和运行结果。原创 2023-11-01 22:36:36 · 618 阅读 · 0 评论 -
Linux下GPIO和看门狗应用编程
本文是Linux下GPIO和看门狗应用编程的介绍,通过sysfs文件系统可以操作硬件,具体以gpio为例展开,文中还介绍了看门狗的应用编程,通过程序自行设置喂狗时间。原创 2023-10-30 19:55:14 · 1016 阅读 · 0 评论 -
Linux下的文件操作和文件管理
本文的主要内容是Linux下文件操作和文件管理的介绍,涉及到的内容比较多,对于一些函数,文中还通过代码进行了功能验证。原创 2023-10-27 15:07:27 · 503 阅读 · 0 评论 -
字符串的处理
本文介绍字符串的处理,包含字符串的输入输出,字符串的复制、比较、拼接等一系列操作等,文中对用到的函数原型进行了罗列,在使用的时候直接根据函数原型传入相应的参数即可。原创 2023-10-24 11:51:49 · 390 阅读 · 0 评论 -
Linux下等待队列、定时器、中断综合应用——按键控制LED
本文是Linux下等待队列、定时器、中断等的一个综合应用实验,通过按键控制LED的亮灭,本实验的实现是在前面LED实验和按键实验的基础上一步步实现的。原创 2023-10-19 12:04:46 · 625 阅读 · 0 评论 -
Linux下按键驱动实验
本文介绍按键的驱动实验,通过修改设备树、pinctrl和gpio子系统等内容,实现按键触发的动作,文中提供了按键驱动的源代码。原创 2023-10-16 11:57:01 · 447 阅读 · 0 评论 -
Linux下将驱动编译进内核
本文介绍在Linux下如何将驱动编译进内核,之前介绍的都是将驱动编译成模块,然后发到开发板自己加载驱动,这篇文章将详细介绍把驱动编译进内核。原创 2023-10-14 12:23:32 · 1507 阅读 · 1 评论 -
Linux下设备树、pinctrl和gpio子系统、LED灯驱动实验
本文介绍设备树、pinctrl和gpio子系统等内容,然后通过LED灯的驱动实验对这些内容进行应用,文中提供了源代码,感兴趣的可以根据开发板类型修改尝试一下。原创 2023-10-11 20:58:31 · 1475 阅读 · 0 评论 -
Linux下platform驱动框架描述
本文介绍Linux下platform驱动框架,包括驱动的分离和分层,platform模型等,并给出了platform驱动的代码框架。原创 2023-10-10 10:58:30 · 467 阅读 · 0 评论 -
如何给开发板设置静态IP
本文的内容是介绍如何给开发板设置一个静态的IP,这样在之后文件的传输过程中会方便很多。原创 2023-10-06 19:58:53 · 4265 阅读 · 0 评论 -
Linux下的管道通信
本文主要介绍管道通信,包括用在父子进程或兄弟进程之间的无名管道通信和有名管道FIFO通信,关于这两种通信,文章中都给出了代码。原创 2023-10-02 20:23:42 · 428 阅读 · 0 评论 -
编译u-boot的过程中遇到的问题
本文主要是我在编译u-boot的过程中遇到的问题,并针对这些问题提出了解决办法,经本人验证是有效的。原创 2023-09-27 10:36:24 · 691 阅读 · 0 评论 -
Linux字符设备驱动开发
本文是Linux下字符设备驱动的开发,介绍了字符设备,file_operations结构体等基本内容,最后是一个完整的字符设备驱动开发例子。原创 2023-09-25 17:26:49 · 855 阅读 · 0 评论 -
一个例子了解交叉编译
本文通过一个具体的例子对交叉编译进行了介绍,其本质就是在一个架构上编译另外一个架构的代码并生成可执行文件。原创 2023-09-22 09:32:17 · 476 阅读 · 0 评论 -
Linux下创建普通用户遇到的问题及解决办法
本文介绍Linux下创建普通用户时遇到的问题及其解决办法,把自己从头到尾创建过程中遇到的问题列出来并给出解决办法。原创 2023-09-14 12:04:30 · 983 阅读 · 0 评论 -
Linux下通过RS232实现开发板与PC间的收发消息
本文的主要内容是在Linux下通过RS232实现开发板与PC间简单消息的接收与发送。如下图,需要用两条RS232的接线分别与开发板和uart3口相连,再接到电脑的usb接口上。启动开发板以后,可以新建一个SSH,远程主机的地址填写开发板的IP即可。原创 2021-12-06 22:58:31 · 2208 阅读 · 0 评论 -
Linux下输入子系统案例
本文的主要内容是Linux下输入子系统的案例介绍。原创 2021-11-29 11:34:19 · 1248 阅读 · 0 评论 -
Linux下按键消抖实验
为什么要进行按键消抖呢,先看下图,我们把按键按下去之后,理想的波形情况应该是下图中的第一个图,但实际波形却是第二个图,因此,要去掉第二个图中的抖动,保证系统功能的可靠性,就要进行按键消抖。如果使用延时函数消抖,系统的实时性会打折扣,这不符合中断上文的理念——即处理事情越快越好。原创 2021-11-28 11:29:55 · 1610 阅读 · 0 评论 -
Linux下内核定时器
不同于单片机定时器,Linux内核定时器是一种基于未来时间点的计时方式,它以当前时刻为启动的时间点,以未来的某一时刻为终止点,类似于我们的闹钟。内核定时器的精度不高,不能作为高精度定时器使用,其内核定时器不是周期性运行的,超时以后就会自动关闭,因此要想实现周期性的定时,就需要在定时处理函数中重新开启定时器。原创 2021-11-28 10:15:47 · 2124 阅读 · 0 评论 -
Linux下的工作队列及其案例
工作队列是实现中断下文的机制之一,是一种将工作推后执行的形式。工作队列与tasklet的异同:tasklet也是实现中断下文的机制,不过tasklet不能休眠,而工作队列是可以休眠的,tasklet可以用来处理比较耗时间的事情,而工作队列可以处理非常复杂并且更耗时间的事情。原创 2021-11-27 22:47:12 · 1498 阅读 · 0 评论 -
Linux下的综合案例——通过按键控制led的亮灭
本文的主要内容是通过一个综合案例,即按键控制led的亮灭来将之前学过的中断、等待队列、pinctrl和gpio子系统、设备树、platform平台总线以及杂项设备驱动等内容串联起来。原创 2021-11-27 16:07:12 · 2590 阅读 · 4 评论 -
Linux下的等待队列及其案例
本文的主要内容是等待队列的介绍及其相应的案例分析,通过对比未加入等待队列和加入等待队列的输出结果,更好的理解等待队列的作用。等待队列:当进程访问设备的时候,经常需要等待有特定事件发生以后再继续往下运行,这个时候就需要在驱动里面实现当条件不满足的时候进行休眠,当条件满足的时候再由内核唤醒进程,那么等待队列就实现了在事件上的条件等待。原创 2021-11-26 17:04:21 · 2210 阅读 · 0 评论 -
Linux下中断下文tasklet的应用
Linux把中断分为两个部分,一个是上半部分,一个是下半部分,在上半部分只处理紧急的事情,同时调用tasklet来启动中断下文,比较耗时的就放到下文来处理,调用tasklet以后,tasklet绑定的函数并不会立刻执行,而是中断出现以后,经过一个很短的不确定时间再执行。tasklet是中断处理中断下文常用的一种方法,tasklet是一种特殊的软中断,处理中断下文的机制还有工作队列和软中断。原创 2021-11-25 17:19:49 · 1618 阅读 · 0 评论 -
Linux下的中断介绍及其应用实验——按键响应
本文的主要内容是介绍中断及其相关函数,再通过一个实例,即按键响应实验来帮助理解中断相关的知识,按键响应实验的内容是按键按下时在开发板上进行打印,每按一次,打印一次。原创 2021-11-23 22:38:00 · 3650 阅读 · 0 评论 -
Linux下的ioctl接口介绍及其应用
ioctl接口也叫做unlocked_ioctl接口。unlocked_ioctl和read/write函数的异同点:相同点:都可以往内核中写数据。不同点:read函数只能完成读的功能,write函数只能完成写的功能,ioctl既可以读也可以写,但在读取大数据时,ioctl的效率不及read/write函数。原创 2021-11-14 22:52:12 · 4614 阅读 · 0 评论 -
Linux下点亮开发板上通过uart外接的led灯
本文是对之前学过的设备树、platform平台总线、pinctrl和gpio子系统及杂项设备驱动的综合练习,其内容是通过程序控制开发板上led的亮灭,这个led是接在uart3上的。原创 2021-11-13 16:06:53 · 2693 阅读 · 0 评论 -
Linux下设备树中platform总线的应用
本文的主要内容是Linux中设备树下platform总线的应用,在之前我们已经介绍过注册平台总线设备和驱动以及probe函数编写等内容,本文正是在此基础上进行代码改动的。原创 2021-11-12 21:10:00 · 1859 阅读 · 0 评论 -
Linux下设备树中常用的of操作函数举例
本文的主要内容是Linux下设备树中常用的of操作函数举例,通过一个具体的例子来了解几个常用of函数的功能。原创 2021-11-12 19:42:13 · 4242 阅读 · 0 评论 -
Linux下通过tftp烧写设备树文件并启动开发板
本文的主要内容是Linux下通过tftp将zImage和dtb文件烧写到开发板并启动,通过给设备树中添加自定义节点这个例子来学习这一整套流程,文中会涉及到设备树节点的添加与编译、开发板环境参数的设置与修改等内容。原创 2021-11-11 19:55:12 · 3978 阅读 · 0 评论 -
WSL的安装与运行
WSL是 Windows下的Linux子系统的简称,它是一个在Windows 10上能够运行原生Linux二进制可执行文件的兼容层。WSL提供了一个微软开发的Linux兼容但不包含Linux代码的内核接口,二进制文件可以在其上运行。WSL不能运行图形用户界面和那些需要未实现的Linux内核服务的软件,但可以用外部软件来实现。原创 2021-11-07 19:07:27 · 31765 阅读 · 6 评论 -
Linux下如何复制U盘中的文件到开发板
本文的主要内容是怎样把U盘中的文件拷贝到开发板。原创 2021-11-03 22:46:06 · 5637 阅读 · 4 评论 -
Linux下设备树及其基本语法
设备树是一种描述硬件资源的数据结构,它通过bootloader将硬件资源传给内核,使得内核和硬件资源描述相对独立。由于其语法结构像树一样,所以管它叫做设备树。原创 2021-11-02 22:17:39 · 1744 阅读 · 0 评论 -
Linux下注册平台总线设备和驱动及probe函数的编写
平台总线模型:Linux内核虚拟出来的一条总线,并不是真实的导线。平台总线模型就是将原来的一个驱动c文件分成了两个c文件,一个是device.c,一个是driver.c,其中稳定不变的放在driver.c中,需要变化的放在device.c中。这样就可以提高代码的重用性,减少代码的重复性,这也正是平台总线模型的作用所在。原创 2021-11-01 22:15:25 · 2806 阅读 · 0 评论 -
Linux下手动/自动创建设备节点
本文的主要内容是介绍如何在Linux下手动以及自动的创建设备节点。原创 2021-10-30 14:59:10 · 4514 阅读 · 0 评论