- 博客(6)
- 资源 (4)
- 收藏
- 关注
原创 数据结构的堆栈与内存分配中的堆栈
一、数据结构的堆栈首先在数据结构上要知道堆栈,尽管我们这么称呼它,但实际上堆栈是两种数据结构:堆和栈。堆和栈都是一种数据项按序排列的数据结构。栈就像装数据的桶或箱子我们先从大家比较熟悉的栈说起吧,它是一种具有后进先出性质的数据结构,也就是说后存放的先取,先存放的后取。这就如同我们要取出放在箱子里面底下的东西(放入的比较早的物体),我们首先要移开压在它上面的物体(放入的比较晚的物体)。...
2019-07-26 16:35:43 913
原创 数据字节类型的长度与结构体字节对齐
一、数据字节类型的长度在32位机器和64机器中int类型都占用4个字节。编译器可以根据自身硬件来选择合适的大小,但是需要满足约束:short和int型至少为16位,long型至少为32位,并且short型长度不能超过int型,而int型不能超过long型。这即是说各个类型的变量长度是由编译器来决定的,而当前主流的编译器中一般是32位机器和64位机器中int型都是4个字节(例如,GCC)。下面...
2019-07-26 09:50:38 833
原创 六、Linux系统IO编程—fcntl 函数 和 ioctl 函数详解
一、fcntl()函数1. 函数的原型#include <unistd.h>#include <fcntl.h>int fcntl(int fd, int cmd);int fcntl(int fd, int cmd, long arg);int fcntl(int fd, int cmd, struct flock * lock);函数说明:fcntl...
2019-07-24 09:19:43 1218
原创 五、Linux系统IO编程—dup与dup2函数
一、cat输入输出的重定向1. cat命令cat 命令用于连接文件并打印到标准输出设备上。语法格式cat [-AbeEnstTuv] [–help] [–version] fileName参数说明:-n 或 --number:由 1 开始对所有输出的行数编号。-b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。-s 或 --sq...
2019-07-18 19:16:28 282
原创 四、Linux系统IO编程—文件IO的内核数据结构与文件原子操作
一、缓存buff说明一般设置缓存 buff 的大小是有一定的规律的,就是根据磁盘块的大小来定。Linux下输入命令: df -k 查看磁盘 可以用命令查看下 /dev/sda1 磁盘的磁盘说明sudo tune2fs -l /dev/sda1Block size 就是磁盘块的大小,这个磁盘块的大小为 4M ,那么就可以设置缓存 buff 大小为 4096,一次就可以将数据写入。...
2019-07-17 16:33:39 223
原创 三、Linux系统IO编程—系统调用文件IO
一、文件IO的概念文件I/O称之为不带缓存的IO(unbuffered I/O)。不带缓存指的是每个read,write都调用内核中的一个系统调用。也就是一般所说的低级I/O——操作系统提供的基本IO服务,与os绑定,特定于linix或unix平台。文件I/O 又称为低级磁盘I/O,遵循POSIX相关标准。任何兼容POSIX标准的操作系统上都支持文件I/O。标准I/O被称为高级磁盘I/O,遵循...
2019-07-04 11:06:21 451
基于STM32F103的W5300硬件协议驱动程序
2018-12-25
书籍《现场总线CANopen设计与应用》
2018-08-04
现场总线CANopen设计与应用
2018-08-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人