在Linux系统的可执行文件(ELF文件)中,开头是一个文件头,用来描述程序的布局,整个文件的属性等信息,包括文件是否可执行、静态还是动态链接及入口地址等信息;
控制台驱动中tty_read函数的实现过程
tty核心中的读写函数tty_read和tty_write,内部调用的是线路规程的read和write操作;本文先忽略tty的写入操作,将重点解析tty线路规程中的n_tty_read()函数的操作;
linux-kernel中的tty驱动
TTY 是 Teletypewriter的缩写(Teleprinter、TeletypewriterTele-Type,缩写为 TTY),中文电传打字机简称电传,是远距离打印交换的编写形式;
在linux中tty表示各种终端,通常是和硬件相对应,tty用来指任何的串口设备,如:输入设备键盘鼠标、输出设备显示器、虚拟的pty等;
u-boot中的tftp命令解析
u-boot中的tftp命令,采用UDP协议,tftp服务器使用UDP 69号端口,传送的数据包最大为512字节,双方采用超时重传机制;
busybox加载inittab过程分析
Linux-kernel中的do_execve函数解析
platform总线设备驱动模型
Linux设备模型提取了设备操作的共有属性,进行抽象,并将这部分抽象的共有属性在内核中实现,而为需要添加设备和驱动的操作提供了统一的接口,简化了驱动开发过程,只需要熟悉这些统一的接口就可以进行驱动开发;
Linux设备驱动模型
未完成
Linux设备驱动模型,由总线(bus)、设备(device)、驱动(driver)三部分组成;总线是处理器与设备之间的通道,在设备模型中,所有的设备都通过总线相连;总线作为Linux设备驱动模型的核心架构,系统中的设备和驱动都挂接在相应的总线上,来完成各自的工作;
Linux-kernel中I2C的master_xfer驱动实现----基于imx6
未完成
在I2C驱动中,每个适配器i2c_adapter都有自己的I2C通信方法,在struct i2c_algorithm结构中的master_xfer()函数中实现;i2c_algorithm结构中的关键函数master_xfer()用于产生I2C访问周期需要的信号,以struct i2c_msg结构的格式进行数据传送;
Linux内核启动流程-基于ARM64
以arm64为例,简单讲述Linux在ARM64架构设备上系统启动的重要流程;