今天把这块的东西算是看完了。总结一下,(1)这里包括底层文件的I/O操作,实际上是系统调用函数借口,是基于文件描述符的文件操作;(2)还有标准I/O操作,是基于缓冲流的文件操作;还有(3)串口的操作,串口是设备文件“/dev”目录下。

  (1)基础的open(),read(),write(),sleek(),close()。

  (2)串口是需要先配置再使用    (3)fopen(),fdopen(),freopen(),fclose(),fread(),fwrite(),getc(),fgetc(),getchar(),putc(),fputc(),putchar(),gets(),fgets(),puts(),fputs(),printf(),fprintf(),sprintf(),vprintf(),

vfprintf(),vsprintf()scanf(),fscanf(),sscanf(),opendir()fdopendir(),closedir()readdir().

  (4)文件锁fcntl(),lockf()(不建议使用)

  (5)多路复用select(),poll()

  突然发现这些函数好多哦,每一个函数的语法写出来很费时间,就不写了。把实例代码都编写出来运行通过就可以了。

  linux系统调用(集成unix系统调用最有用的部分)是在内核空间,往上是用户编程接口API(遵循POSIX标准)是在用户空间,再往上是系统命令和应用程序。

  虚拟文件系统(VFS),抽象出各种文件系统公共的部分形成一个抽象层是系统内核的一部分,位于应用程序和真正的文件系统之间。

  文件是以字符序列构成的信息载体。文件描述符,是一个非负的整数,是一个索引值,指向内核中每个进程打开文件的记录。linux支持的文件类型有:普通文件,目录文件,设备文件,链接文件,块设备文件,字符设备文件,管道文件,套接字文件。

文件描述符,文件描述符标志位,文件状态标志三者的区别

  文件描述符:标识文件用的,就是一个数字,操作系统知道它对应哪一个以打开的文件。

   文 件描述符标志(close_on_exec):仅仅是一个标志,当你f调用ork()创建了一个子进程,然后在子进程中调用了exec函数时就用到了该标志.意义是: 执行exec前是否要关闭这个文件描述符。

  文件状态标志:可读,可写,锁。

  贴个链接:

  open()函数:http://blog.csdn.net/linux_loajie/article/details/43916677

          http://www.xuebuyuan.com/2061960.html

  文件描述符http://blog.csdn.net/cywosp/article/details/38965239

  各函数的语法要点:http://blog.csdn.net/sunhy1021/article/details/4729104

嵌入式文件I/O操作的更多相关文章

  1. 嵌入式GPIO接口及操作(二)

    目标:C语言实现点亮LED灯 首先是main函数,并不特殊,它是被系统调用来执行的,main函数结束后要返回调用main函数的地址处,那么裸机程序,没有操作系统做这些工作,就要自己写调用main函数的 ...

  2. .NET5.0 单文件发布打包操作深度剖析

    .NET5.0 单文件发布打包操作深度剖析 前言 随着 .NET5.0 Preview 8 的发布,许多新功能正在被社区成员一一探索:这其中就包含了"单文件发布"这个炫酷的功能,实 ...

  3. 用 JSP 实现对文件的相关操作

    前段时间一直忙着作业,实验,动手的时间真是少之又少,今天终于可以继续和大家分享关于 JSP 的学习心得. 简单总结一下吧: JSP 理论性很强,感觉就是纯语法. 我更偏向于实际编写代码,这样更容易理解 ...

  4. PHP文件相关的操作函数——目录操作

    1.有关文件类型的函数 PHP是以UNIX的文件系统为模型的,因此在Windows系统中我们只能获得“file”.“dir”或者“unknown”三种文件类型.而在UNIX系统中,我们可以获得“blo ...

  5. C#对文件/目录的操作:Path、File、Directory、FileStream、StreamReader、StreamWriter等类的浅析

    以下类的命名空间都是:System.I/0; 一.Path:主要对文件路径的操作! 常用方法: String path=@"C:\a\b\c\123.txt"; 1-1.Path. ...

  6. 无法打开物理文件xxx.mdf操作系统错误 5:“5(拒绝访问。)” (Microsoft SQL Server,错误: 5120)的解决方法

    无法打开物理文件xxx.mdf操作系统错误 5:“5(拒绝访问.)” (Microsoft SQL Server,错误: 5120)的解决方法   问题描述: 在附加数据库到sql server时,附 ...

  7. java io流 对文件夹的操作

    java io流 对文件夹的操作 检查文件夹是否存在 显示文件夹下面的文件 ....更多方法参考 http://www.cnblogs.com/phpyangbo/p/5965781.html ,与文 ...

  8. php对xml文件进行CURD操作

    XML是一种数据存储.交换.表达的标准: - 存储:优势在于半结构化,可以自定义schema,相比关系型二维表,不用遵循第一范式(可以有嵌套关系): - 交换:可以通过schema实现异构数据集成: ...

  9. 【JAVA使用XPath、DOM4J解析XML文件,实现对XML文件的CRUD操作】

    一.简介 1.使用XPath可以快速精确定位指定的节点,以实现对XML文件的CRUD操作. 2.去网上下载一个“XPath帮助文档”,以便于查看语法等详细信息,最好是那种有很多实例的那种. 3.学习X ...

随机推荐

  1. SQLite Expert 删除表数据并重置自动增长列

    用下面的语句肯定是行不通的,语句不支持 truncate table t_Records 方法:1.删除表数据 2.重置自动增长列 where name='t_Records' /*name :是表名 ...

  2. Qt之自定义信号和槽函数

    自定义信号和槽函数: 1.类的声明和实现分别放在.h和.cpp文件中: 2.类声明包含Q_OBJECT宏: 3.信号只要声明不要设计其的实现函数 4.发射信号用emit关键字 5.自定义槽的实现与普通 ...

  3. nodejs框架express准备登录

    目录: 安装模板 静态资源 添加视图 渲染视图 url重定向 模板引擎 从本节课程开始我们要使用express框架实现一个简单的用户登陆功能,让我们先准备一下相关资源. 在nodejs中使用expre ...

  4. MSSQL优化之索引优化

    一.认识索引 (一)深入浅出理解索引结构 实际上,您可以把索引理解为一种特殊的目录.微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引.簇集索引)和非聚集 ...

  5. Openstack命令行创建不同vlan段虚拟机

    默认使用nova-network的vlan模式,但是在使用默认的dashboard的时候,不能指定创建的虚拟机的使用网段,固定IP地址. 实际上该功能是在存在的,只是openstack的dashbbo ...

  6. Python之logging模块

    一.引言 之前在写一些小程序的时候想把日志内容打到文件中,所以就自己写了一个logger.py的程序,如下: #!/usr/bin/python # -*- coding=utf-8 -*- impo ...

  7. mysql之show engine innodb status解读

    注:以下内容为根据<高性能mysql第三版>和<mysql技术内幕innodb存储引擎>的innodb status部分的个人理解,如果有错误,还望指正!!   innodb存 ...

  8. 【转】 Tomcat v7.0 Server at localhost was unable to start within 45

    转载地址:http://www.jsjtt.com/java/JavaWebkaifa/58.html Starting Tomcat v7.0 Server at localhost' has en ...

  9. apache和tomcat有什么不同,为什么要整合apache 和tomcat?

    1. Apache是web服务器,Tomcat是应用(java)服务器,它只是一个servlet容器,是Apache的扩展.2. Apache和Tomcat都可以做为独立的web服务器来运行,但是Ap ...

  10. easyui DataGrid 工具类之 Utils class

    import java.lang.reflect.InvocationTargetException;import java.text.ParseException;import java.text. ...