个人学习笔记

Linux常用命令

5 分钟阅读

快捷键 快捷键 在命令行下已经输入一串命令下的快捷操作: ctrl+c: 中断输入,另起一行 ctrl+u: 删除光标以前的字符 ctrl+k: 删除光标后以后的字符 ctrl+a: 移动光标至头部 ctrl+e: 移动光标至尾部 ctrl+l: 清屏 ctrl+r: 搜索历史命令

Linux Device Driver

10 分钟阅读

设备驱动模型 设备驱动模型 由描述设备相关的结构与描述驱动相关的结构组成。如usb总线有usb_device和usb_driver,dts描述设备有platform_device和platform_driver 通常device由总线或者kernel生成,然后由相应的driver与其绑定 设备抽象结构体strcut device(include/linux/device.h),具体设备都会包含一个struct device成员,如usb_device定义如下: // include\linux\usb.h struct usb_device { int devnum; ...... struct device dev; ...... 驱动抽象结构体struct device_driver(include/linux/device.h) class用于对设备进行分类管理

学习整理:uboot its文件

3 分钟阅读

ITS: image tree source,使用mkimage和dtc工具可以将.its和对应的image文件打包成itb文件。该文件可以下载到memory中,用bootm执行。 参考链接: https://github.com/wowotechX/u-boot/tree/x_integration/doc/uImage.FIT http://www.wowotech.net/u-boot/fit_image_overview.html

学习整理:ARM Linux设备树(DTS)

2 分钟阅读

DTS: Device Tree Source,以文本形式描述DeviceTree 通常所在目录kernel/arch/arm/boot/dts dtc工具将test.dts文件,生成test.dtb文件;fdtdump工具可以将test.dtb文件,解析成test.dts文件 参考链接:https://elinux.org/Device_Tree_Usage

学习整理:arm-trusted-firmware

10 分钟阅读

资源说明 本文以AArch64为准,内容以翻译原文为主。 资源说明 源码地址:arm-trusted-firmware 使用说明:user-guide 框架流程:firmware-design

Ubuntu下的文件共享(tftp/nfs)

2 分钟阅读

tftp 服务器端 tftp 服务器端 sudo apt-get install tftpd-hpa,安装tftpd-hpa sudo vim /etc/default/tftpd-hpa,配置tftp目录 # /etc/default/tftpd-hpa TFTP_USERNAME="tftp" TFTP_ADDRESS=":69" TFTP_DIRECTORY="tftp根目录" #服务器目录,需要设置权限为777,chomd 777 TFTP_OPTIONS="-l -c -s" # l表示listen模式,c可以创建新文件,s不需要指定路径 sudo service tftpd-hpa restart ,启动tftp服务 service tftpd-hpa status,查看服务状态

Linux Driver的安装和卸载

3 分钟阅读

ko文件的安装与卸载 安装 ko文件的安装与卸载 安装 # 将ko文件拷贝到目录 target_folder="/lib/modules/$(uname -r)/kernel/drivers/test" mkdir -p -m 755 $target_folder cp test.ko $target_folder -f # 更新和加载模块 depmod -a modprobe test # 设备Driver安装完成后会更新/lib/modules/$(uname -r)/module.alias文件, # 该文件保证设备与driver的安装关系,当系统重启后,如果存在该设备,driver则被自动加载

概率论基础

4 分钟阅读

基本概念 基本概念 样本空间:随机试验E的所有可能结果组成的集合,记为S 样本点:样本空间的元素,即随机试验E的每个结果 随机事件:样本空间的子集,简称事件 不可能事件:每次试验都不会发生的事件,记为∅ 必然事件:S是自身的子集,必然发生

readelf与objdump

14 分钟阅读

readelf 查看头信息(-h) readelf 查看头信息(-h) $ readelf -h mytest ELF Header: Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 Class: ELF64 Data: 2's complement, little endian Version: 1 (current) OS/ABI: UNIX - System V ABI Version: 0 Type: EXEC (Executable file) Machine: Advanced Micro Devices X86-64 Version: 0x1 Entry point address: 0x400790 Start of program headers: 64 (bytes into file) ......

Bash shell脚本

12 分钟阅读

通用说明 通用说明 注释用# 标头用#!表明解释器 #!/bin/bash echo "Hello world" 用;号可以将多行语句写一行,可以不用空格 a=10;b=20;c=30 内部执行命令用``,或者$() `expr 1 + 1` #数学运算 $(expr 1 + 1) #同上

微积分基础

9 分钟阅读

导数 导数定义 导数 导数定义 [f’(x) = \lim_{\Delta{x}->0}\frac{f(x+\Delta{x})- f(x)}{\Delta{x}} = \lim_{x->x_0}\frac{f(x)-f(x_0)}{x-x_0}] [f’(x)也常表示为:\frac{\alpha y}{\alpha x} 或者 \frac{\Delta y}{\Delta x} 或者 \frac{d y}{d x}] 意义: 可以代表曲线y=f(x)在某点的切线斜率 可以反映y在x的某点上的变化率 可以表示运动曲线s=f(t)在t的某点上的速率