logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

VMware使用ubuntu虚拟机的一些使用技巧

VMware安装Ubuntu虚拟机一般相对比较容易,本文记录一些VMware使用ubuntu虚拟机的其他使用技巧。

#ubuntu#linux#运维
Linux应用程序、shell脚本程序、驱动程序参数传递的方法

我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n。n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推……/bin/bashecho "Shell 传递参数!echo "文件名:$0";echo "第一个参数为:$1";echo "第二个参数为:$2";echo "第三个参数为:$3";

#linux
linux异步IO通知

Linux 应用程序可以通过阻塞或者非阻塞这两种方式来访问驱动设备,通过阻塞方式访问的话应用程序会处于休眠态,等待驱动设备可以使用,非阻塞方式的话会通过 poll 函数来不断的轮询,查看驱动设备文件是否可以使用。这两种方式都需要应用程序主动的去查询设备的使用情况。“信号”却可以使内核主动通知应用程序,信号类似于我们硬件上使用的“中断”,只不过信号是软件层次上的。

#linux#驱动开发
Linux网络抓包工具tcpdump

tcpdump 指令可列出经过指定网络界面的数据包文件头,可以将网络中传送的数据包的 “头” 完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供 and、or、not 等逻辑语句来帮助你摘取有用信息。由于它需要将网络接口设置为混杂模式,普通用户不能正常执行,但具备 root 权限的用户可以直接执行它来获取网络上的信息。

#网络#linux#tcpdump
Linux内核中红黑树节点的插入原理分析

  普通的二叉查找树在极端情况下可退化成链表,此时的增删查效率比较低。平衡的二叉树(如AVL、红黑树等)能较好的解决这个问题。一、红黑树的性质  1,每个结点是红的或黑的  2,根结点是黑的  3,每个叶子结点是黑的  4,如果一个结点是红的,则它的两个儿子都是黑的  5,对每个结点,从该结点到其子孙结点所有路径上的包含相同数目的黑结点二、红黑树结构体的定义红黑树的定义在/include/linu

#linux#b树#数据结构
Linux内核中红黑树节点的删除原理分析

一、函数简介  红黑树使用时的删除方法在Documentation/rbtree.txt文件内有定义:struct mytype *data = mysearch(&mytree, "walrus");if (data) {rb_erase(&data->node, &mytree);myfree(data);}  删除红黑树节点调用的是函数:void rb_eras

#linux#运维#b树
Linux 按键输入驱动

  按键驱动是操作 GPIO,在驱动程序中使用一个整形变量来表示按键值,应用程序通过 read 函数来读取按键值,判断按键有没有按下。因为保存按键值的变量是个共享资源,驱动程序要向其写入按键值,应用程序要读取按键值。所以要对其进行保护,对于整形变量而言首选的是原子操作,使用原子操作对变量进行赋值以及读取。  读取按键一般采用中断的方式,并且采用定时器来实现按键消抖。此外在编写驱动的时候一定要考虑到

#linux#驱动开发
树莓派linux led字符设备驱动(互斥)

一、互斥体  互斥访问表示一次只有一个线程可以访问共享资源,不能递归申请互斥体。Linux 内核使用 mutex 结构体表示互斥体。使用 mutex 之前要先定义一个 mutex 变量。在使用 mutex 的时候要注意如下几点:  ①、 mutex 可以导致休眠,因此不能在中断中使用 mutex,中断中只能使用自旋锁。  ②、和信号量一样, mutex 保护的临界区可以调用引起阻塞的 API 函数

#linux
树莓派linux led字符设备驱动(信号量)

一、信号量  Linux 内核提供了信号量机制,信号量常常用于控制对共享资源的访问。相比于自旋锁,信号量可以使线程进入休眠状态,使用信号量会提高处理器的使用效率。但是,信号量的开销要比自旋锁大,因为信号量使线程进入休眠状态以后会切换线程,切换线程就会有开销。总结一下信号量的特点:  ①、因为信号量可以使等待资源线程进入休眠状态,因此适用于那些占用资源比较久的场合。  ②、因此信号量不能用于中断中,

#linux
树莓派linux led字符设备驱动(pinctrl 和 gpio 子系统)

一、pinctrl 子系统Linux 内核针对 PIN 的配置推出了 pinctrl 子系统,对于 GPIO的配置推出了 gpio 子系统。pinctrl 子系统就是为了解决配置寄存器比较繁琐且易出错而引入的。要使用 pinctrl 子系统,我们需要在设备树里面设置 PIN 的配置信息。1.1、设备树中添加 pinctrl 节点模板...

#linux
    共 33 条
  • 1
  • 2
  • 3
  • 4
  • 请选择