个人学习笔记

学习整理: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脚本

13 分钟阅读

通用说明 通用说明 注释用# 标头用#!表明解释器 #!/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的某点上的速率

VSCODE C/C++配置

4 分钟阅读

常用操作 常用操作 F1: 选择和执行命令 CTRL+SHIFT+I: 格式化排版代码 CTRL+P: 搜索文件名 CTRL+S: 保存修改 CTRL+鼠标左键: 跳转到定义处 CTRL+ALT+减号: 返回上一处 文件单击:预览,注意标签名是斜体字;预览会覆盖上一次预览 文件双击:打开,注意标签名是正体字;会从新标签打开

CMAKE的使用

5 分钟阅读

最简单方式 最简单方式 新建hello.cpp源码文件,如下 #include<stdio.h> int main() { printf("hello world\n"); } 新建CMakeLists.txt,内容如下 add_executable(hello hello.cpp) 执行mkdir build && cd build && cmake .. 执行make,生成hello

gcc参数选项整理

3 分钟阅读

参数 -o 输出文件名 -E 输出预处理文件 参数 -o 输出文件名 gcc test.c -o test 将gcc的处理结果输出到test文件中。本例中输出可执行文件。 -E 输出预处理文件 gcc -E test.c -o test.i 将预处理输出到test.i文件中。在大型项目中,可能各个宏的值不容易从代码里面直接看出来,通过-E参数,可以全部展开。

Ruby元编程

11 分钟阅读

eval函数 eval函数 该函数将字符串解析成代码,如下示例 传入变量字符串,解析成变量 test = "abc" puts eval("test") #打印abc puts eval("0x12") #打印18