- 博客(19)
- 收藏
- 关注
原创 linux学习笔记1
只有 1 个文件名指向它 → 硬链接数 =):多了一个名字指向同一份数据 → 硬链接数(变成 2、3、4...)rm file):少了一个名字指向数据 → 硬链接数只有当硬链接数从时,从而。如果数字是 2 或以上,删除其中一个文件名,数据依然完好无损。(目录自身的名字 + 内部的(注意:不统计普通文件),硬链接数(因为每个子目录里的..都指向父目录)此时/home的硬链接数 = 2(基础)+ 2(两个子目录)=
2026-08-17 10:02:14
157
原创 linux嵌入式学习笔记
在Linux中,文件描述符0、1、2是有特殊含义的。0是标准输入(stdin)的文件描述符1是标准输出(stdout)的文件描述符2是标准错误(stderr)的文件描述符。
2026-05-28 22:29:17
253
原创 NAND FLASH
块(Block):NAND Flash由多个块组成,每个块是擦除的最小单位。通常,一个块包含多个页。 页(Page):页是数据读写的最小单位。每个页由两部分组成: 数据存储区(Data Area):用于存储有效数据的区域。对于MT29F4G08,数据存储区的大小为2KB。 备用区域(Spare Area):用于存储额外的信息,如ECC(纠错码)校验值、坏块管理信息等。备用区域的大小为64字节,用于实现坏块管理和磨损均衡等功能。 NAND Flash 的寻址方式:列地址(Column
2026-05-19 16:53:14
380
原创 C++学习笔记
浮点数是一个近似值,因为0~1之间的浮点数无穷多个,用32/64位无法全部表达,只能近似采样。所以一般不用==判断浮点数的相等,而是判断误差精度。
2026-05-16 20:53:07
132
原创 面试常用八股文
什么是野指针1.指向已被释放或无效的内存地址的指针是野指针。什么情况下产生野指针1.内存释放后未置空指针free(ptr);*ptr = 10;// 这里ptr成为了野指针2.返回局部变量的指针return # // 返回局部变量的指针*ptr = 10;// getIntPointer返回一个野指针3.未初始化指针char* p;互斥锁是一种用于线程同步的机制,用于确保同一时间只有一个线程访问共享资源。
2026-05-03 16:36:43
347
原创 TMS320C6748学习记录
硬件乘法器,集成FFL、FIR、LMS等硬件加速指令CPU架构采用修正的哈佛架构、多总线技术及流水线结构,将程序与数据存储器分开,取指令与取数据同时进行。
2026-04-30 16:48:57
128
原创 ucosii学习笔记
ucosii中任务三个部分所组成:任务程序代码、任务堆栈和任务控制块。任务控制块就是关联了任务代码的程序控制块,它记录了任务的各个属性;任务堆栈则拜来保存任务的工作环境;当然,与其他代码一样,任务程序代码就是任务的执行部分。任务控制块链表对任务进行管理。ucosii的任务有两种:用户任务和系统任务。在ucosii中,最多可以含有 64 个任务(包括用户任务和系统任务)。
2026-04-27 09:53:01
321
原创 lua笔记
在 Lua 里,table 的创建是通过"构造表达式"来完成,最简单构造表达式是{},用来创建一个空表。boolean 类型只有两个可选值:true(真) 和 false(假),Lua 把 false 和 nil 看作是 false,其他的都为 true,数字 0 也是 true。table 的创建是通过"构造表达式"来完成,最简单构造表达式是{},用来创建一个空表。Lua 中的表(table)其实是一个"关联数组"(associative arrays),数组的索引可以是数字或者是字符串。
2026-04-27 09:52:41
222
原创 linux学习笔记
printf(),遇到'\n'打印缓冲区内容,故一定要加'\n'。执行fork()函数,父子进程有相同全局变量、.data段、堆、栈等,不同之处在于ID、fork返回值、运行时间等,所以说父子进程的内存空间,遵循读时共享,写时复制的原则。exec族函数,进程替换。
2026-04-21 16:37:15
81
原创 ucosiii学习笔记
时间片调度是针对任务优先级相同的任务而言的,当多个具有相同任务优先级的任务就绪时,任务调度器会根据用户设置的任务时间片轮流地运行这些任务,当然这些任务的运行依然会被任务优先级更高的任务抢占。抢占式调度主要是针对任务优先级不同的任务,每一个任务都有一个任务优先级,任务优先级高的任务可以抢占任务优先级低的任务运行,只有当任务优先级高的任务被挂起,低任务优先级的任务才能够运行。跳转去执行中断的中断服务函数时,原本处于运行态的任务就会切换到中断态,直到中断服务函数处理结束后,在切换回运行态继续运行。
2025-06-10 16:50:25
2003
原创 C语言高阶笔记
va_list类型通常定义为字符指针(char*),用于指向参数列表的起始位置。它通过一系列宏(如va_start、va_arg和va_end)来操作可变参数。如果是有if-else语句,这种写法也会出现错误,需要用do-while语句。1. 强制参数有至少一个,代表一种规则,由函数定义者自行定义和解析。但是前面是if语句,会出现问题,需要整个函数部分加个大括号;2. 可变参数可以有多个,函数定义者和调用者自行决定。void va_fuc(强制参数,可变参数)一个例子,用来计算输入数字的平均数。
2025-05-14 13:37:57
214
原创 c与指针笔记
主函数与子函数使用同一套数据,避免了参数传递过程中的数据复制,提高运行效率,减小内存占用。利用主函数与子函数使用同一套数据的特性,实现数据返回,等于实现多返回值函数。需要注意为了防止函数修改指针指向的值,形参加const修饰。如果是普通变量值传递的话,局部变量a的值不会变。指针能够传递诸如数组、结构体、函数等指针。地址传参的话,a的值会变。
2025-05-08 16:49:46
353
原创 C专家编程笔记
整型提升的意义:表达式的整型运算要在CPU的相应运算器件内执⾏,CPU内整型运算器(ALU)的操作数的字节⻓度⼀般就是int的字节⻓度,同时也是CPU的通⽤寄存器的⻓度。C语⾔中整型算术运算总是⾄少以缺省(默认)整型类型的精度来进⾏的,为了获得这个精度,表达式中的字符和短整型操作数在使⽤之前被转换为普通整型,这种转换称为整型提升。两个操作数都是指向有限定符或无限定符的相容类型的指针,左边指针所指向的类型必须具有右边指针指针所指向类型的全部限定符。通过指针偏移成员所占内存,解引用取得值。
2025-04-30 08:53:17
565
原创 C语言初阶笔记一
/define 定义标识符常量#define MAX 1000 // MAX 的值就是1000//define 定义宏,宏是有参数,和函数很像#define ADD(x, y) ((x)+(y))//后面括号的是内容// 宏会直接替换上面的(2)+(3)) 而函数则需要调用return 0;
2023-06-29 10:22:43
174
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅