Linux基础
文章平均质量分 57
jansert
这个作者很懒,什么都没留下…
展开
-
linux网络编程基础
1、OSI网络七层模型 协议 作用[应用层 ]应用层 A: 提供应用程序间通信 TFTP、HTTP、FTP、 文件传输,电子邮件,文件服务,虚拟终端[应用层 ]表示层 P: 处理数据格式、数据加密等 Telnet,Rlogin,SNMP,Gopher 数据格式化,代码转换,数据加密原创 2021-05-03 07:39:59 · 117 阅读 · 0 评论 -
USB_HID基础
1、USB属于半双工传输,2、传输事务:所以必须使用一种机制协调主机和设备的通信,这个机制在USB中称之为传输事务3、HID设备没有保证的传输速率,如果设备是设置在10ms的时距,事务之间的时间可能等于或小于10ms。除非设备是设置在全速时在每个帧传输数据,或是在高速时在每个微帧传输数据。这是最快的轮询速率,所有端点可以保证有正确的带宽可供使用4、Device Class Definition for HID 是HID的基本规范文件,HID Usage Tables 是基本规范文件的附件,为开发原创 2021-01-09 16:53:58 · 1413 阅读 · 0 评论 -
Linux中的中断屏蔽与使能,共享中断
使能和屏蔽中断:CPU一般都具有屏蔽中断和打开中断的功能,这项功能可以保证正在执行的内核执行路径不被中断处理程序所抢占,防止某些竞态的发生。屏蔽中断的使用方法:local_irq_disable() /* 屏蔽中断 */. . .critical section /* 临界区 */. . .local_irq_enable() /* 开中断 */其底层的实现原理就是让CPU本身不响应中断。local_irq_disable() 和local_irq_enable().原创 2021-01-01 16:38:05 · 2363 阅读 · 0 评论 -
idr机制
IDR机制在linux内核中指的是整数ID管理机制,就是一种将一个整个ID号和一个指针关联在一起的机制。IDR机制原理:IDR机制适用在那些需要把某个整数和待定指针关联在一起的地方。例如,在IIC总线中,每个设备都有自己的地址,要想在总线上找到特定的设备,就必须要先发送设备的地址。当适配器要访问总线上的IIC设备时,首先要知道它们的ID号,同时要在内核中建立一个用于描述该设备的结构体,和驱动程序。IDR机制采用红黑树实现,可以很方便的将整数和指针关联起来,并且具有很高的所有效率。...原创 2021-01-01 16:34:51 · 565 阅读 · 0 评论 -
Linux 内核基础
1、Linux 分为用户空间和内核空间的作用是为了安全性1)ARM的7种工作模式:2)X86实现有Ring0-Ring3的级别:Ring0下,可以执行特权指令,内核代码运行在Ring0用户代码运行在Ring33)通过系统调用和硬件中断能完成从用户空间到内核空间的转换2、Linux内核架构系统调用,内存管理子系统,进程管理,体系结构,虚拟文件系统,驱动以及网络协议栈3、内核源代码下载地址 www.kernel.org源代码目录:arch:内核所支持的各种CPU体系.原创 2021-01-01 16:33:06 · 148 阅读 · 0 评论 -
Linux LCD基础
1、液晶一些有机物融化为液体之后具有某些晶体的特性,比如说折射性,称为“液晶”。液晶属于一种有机化合物,分子形状为长棒状,长度约为10nm,在不同的电流作用下,分子会做有规律的旋转,这样对光线产生一定的控制,很多液晶分子构成一个像素,而很多像素又构成了完整图像LCD是Liquid Crystal Display的简称,液晶显示器按照驱动方式分为静态驱动、简单矩阵驱动以及主控矩阵驱动,其中TFT属于主动矩阵驱动。主动矩阵驱动TFT通过晶体管显示信号开启或关闭液晶分子的电压,从而避免显示器对电场原创 2021-01-01 16:30:50 · 272 阅读 · 0 评论 -
Linux 网络基础
1、OSI网络七层模型 协议应用层 A: 提供应用程序间通信 DNS、Telnet、TFTP、HTTP、SNMP、FTP、SMTP 文件传输,电子邮件,文件服务,虚拟终端表示层 P: 处理数据格式、数据加密等 数据格式化,代码转换,数据加密会话层 S: 建立、维护和管理会话 解除或建立与别的节点的联系传输层 T: 建立主机端到端的连接 TCP、UDP 提供端对端的接口网络层 N: 寻址和路由选择 IP、ICMP、OSPF、BGP、IGMP、ARP、RARP 为数据包选择路由数据链路层原创 2021-01-01 16:21:02 · 87 阅读 · 0 评论 -
Linux 终端设备驱动
1、控制台1)控制台是一个虚拟的终端,它必须映射到真正的终端上2)控制台是个只输出的设备,功能很简单,只能在内核中访问2、伪终端一种特殊的终端设备,由主-从两个成对的设备构成,当打开主设备时,对应的从设备随之打开,形成连接状态输入到主设备的数据成为从设备的输出,输入到从设备的数据成为主设备的输出,形成双向管道伪终端设备常用于远程登录服务器来建立网络和终端的关联3、串口驱动Linux 内核使用uart_driver来描述串口,包含串口设备驱动名、设备名、设备号等信息..原创 2021-01-01 16:16:31 · 168 阅读 · 0 评论 -
Linux 终端控制体系
1、控制台1)控制台是一个虚拟的终端,它必须映射到真正的终端上2)控制台是个只输出的设备,功能很简单,只能在内核中访问2、伪终端一种特殊的终端设备,由主-从两个成对的设备构成,当打开主设备时,对应的从设备随之打开,形成连接状态输入到主设备的数据成为从设备的输出,输入到从设备的数据成为主设备的输出,形成双向管道伪终端设备常用于远程登录服务器来建立网络和终端的关联3、串口驱动Linux 内核使用uart_driver来描述串口,包含串口设备驱动名、设备名、设备号等信息..原创 2021-01-01 16:13:47 · 280 阅读 · 0 评论 -
Linux USB总线基础
USB支持热插拔的硬件原理在USB集线器(hub)的每个下游端口的D+和D-上,都接了一个15K的下拉电阻到地,这样,在集线器的端口悬空时,就被这两个下拉电阻拉成低电平,而在USB设备端,在D+或D-接一个15K的上拉电阻。对于全速和高速设备,上拉电阻接在D+上,而低速设备接在D-上。当设备插入到集线器时,上拉电阻和下拉电阻分压,将差分数据线中的一条拉高,集线器检测到电平的变化,报告给主控制器。1、一个USB设备,是如何被USB系统发现并安装对应的设备驱动程序的,从而使USB设备可以正常..原创 2021-01-01 16:11:29 · 620 阅读 · 0 评论 -
Linux USB基础
1、USB基础USB(Universal Serial Bus),通用串行总线,是一种外部总线标准,用于规范电脑与外部设备的连接和通讯。USB主要优点:1)支持热插拔2)携带方便3)标准统一4)可以连接多个设备每条USB总线上最多可以接127个设备USB主控制器:负责处理主机与设备之间的电器和协议层的互联,常见的USB主控制器规格有:1)OHCI:主要是非PC系统上的USB芯片,如ARM2)UHCI:大多是Intel和Via主板上的USB控制器芯片,都是...原创 2021-01-01 16:07:13 · 439 阅读 · 0 评论 -
Linux Makefile
程序的编译与链接:编译时,编译器需要的是语法的正确,函数与变量声明的正确。链接时,主要是链接函数与全局变量。Makefile介绍:1、显示规则:说明如何生成一个或多个目标文件(要生成的文件,文件的依赖 文件、生成的命令);2、隐晦规则:make具有自动推导功能,可以让我们比较粗糙的写makefile;3、变量定义:需要定义一系列的变量,变量一般都是字符串;4、文件指示:主要包括三个部分:1)在一个Makefile中调用另一个Makefile;2)根据需要指定Make.原创 2022-04-01 15:59:14 · 2796 阅读 · 0 评论 -
Kobject源码分析
kobject:最小的device module unit,内嵌在kernel的device资源结构中,例如 character device(cdev), block device(blkdev)。这些资料结构中都会内嵌一个kobject。struct kobject {const char *name;/*该Kobject的名称,同时也是sysfs中的目录名称。由于Kobje...原创 2019-12-29 09:32:10 · 315 阅读 · 0 评论 -
Linux Mmap映射
mmap基础概念:mmap是一种内存映射的方法,即将一个文件或其他对象映射到进程的地址空间,实现文件磁盘地址和进程虚拟地址空间中的一段虚拟地址的一一映射关系。实现这样的映射之后,进程就可以采用指针的方式读写操作这一段内存,而系统会自动回写脏页面到对应的文件磁盘上,即完成了对文件的操作而不必调用read、write等函数调用。相反,内核空间对这段区域的修改也直接反映到用户空间,从而实现不同进程之...原创 2020-01-12 20:08:47 · 785 阅读 · 0 评论