ElfBoard

加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论
  • 飞凌嵌入式ElfBoard-文件I/O的深入学习之阻塞I/O与非阻塞I/O
    1.4.1.1 概念 阻塞I/O顾名思义就是对文件的I/O操作是阻塞式的,即假如对某些类型文件(管道文件、网络设备文件和字符设备文件)进行读操作时,如果数据未准备好、文件当前无数据可读,那么读操作可能会使程序阻塞等待,直到有数据可读时才会被唤醒返回。 普通文件的读写操作是不会阻塞的,不管读写多少个字节数据,read或 write一定会在有限的时间内返回,所以普通文件一定是以非阻塞的方式进行I/O操
  • 飞凌嵌入式ElfBoard-文件I/O的了解探究之文件描述符
    open返回得到的文件描述符fd可以进行复制,复制成功之后可以得到一个新的文件 描述符,使用新的文件描述符和旧的文件描述符都可以对文件进行IO操作,复制得到的文件描述符和旧的文件描述符拥有相同的权限。 在Linux系统下,可以使用dup或dup2这两个系统调用对文件描述符进行复制。 1.dup 用于并可以多次复制文件描述符,复制得到的文件描述符与原文件描述符都指向同一个文件表,它们的文件偏移量是一
  • 飞凌嵌入式ElfBoard-文件I/O的了解探究之多次打开文件
    在一个进程中多次打开同一个文件,会得到多个不同的文件描述符fd,在关闭文件时也需要关闭全部的文件描述符。 测试: #include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> int main()
  • 飞凌嵌入式ElfBoard-文件I/O的了解探究之Linux系统的文件管理机制
    静态文件与 inode 文件在没有被打开的情况下一般都是存放在存储设备中,比如硬盘、U盘等存储设备。静态文件则是指:存放在磁盘文件系统中,并且以一种固定的形式进行存放的文件。 文件储存在硬盘上,硬盘的最小存储单位叫做“扇区”(Sector),每个扇区储存512字节(相当于 0.5KB),操作系统读取硬盘的时候,不会一个一个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个“块”
  • 飞凌嵌入式ElfBoard-文件I/O的了解探究之返回错误处理与相关函数
    在程序执行过程中,当判断到某个函数执行失败时,通常会调用return退出程序。在Linux系统下对常见的错误做了一个编号,每一个编号都代表着每一种不同的错误类型,当函数执行发生错误的时候,操作系统会将这个错误所对应的编号赋值给errno变量,每一个进程(程序)都维护了自己的errno变量,它是程序中的全局变量,该变量用于存储就近发生的函数执行错误编号,也就意味着下一次的错误码会覆盖上一次的错误码。