一、IO系统结构
在计算机系统中,cpu要和许多外设进行交互。比如鼠标,键盘,网卡等等。
1、IO是如何协调工作的那?
(1)对于设备来说,其有两部分组成,一部分是机械部分,另一部分是电子控制部分。
而电子控制部分是通过各种寄存器和cpu进行通信,被cpu所控制的。
比如控制寄存器,数据寄存器,状态寄存器。他们分别和控制总线,数据总线,状态总线相连接。
(2)操作系统对IO设备的管理
...
分类:
其他好文 时间:
2015-07-12 12:54:36
阅读次数:
325
传统的Java里,只有一个File类,即代表文件,又代表目录。Java 7新增了如下API来访问文件
Path - 接口,代表一个平台无关的目录。提供了大量的方法来操作目录。
Paths - 工具类。所有方法都是static的。
Files - 操作文件的工具类。提供了大量的方法来操作文件。该类所包含的大量方法可能与我们日常一般的期望有些出入。
早期的Java只提供了File类来访问文件,其功能有限且性能不高,NIO.2提供了Path接口以及Paths和Files工具类来访问文件系统。...
分类:
其他好文 时间:
2015-05-21 22:45:07
阅读次数:
286
六星经典CSAPP-笔记(10)系统I/O1.Unix I/O所有语言的运行时系统都提供了高抽象层次的I/O操作函数。例如,ANSI C在标准I/O库中提供了诸如printf和scanf等I/O缓冲功能的函数;C++中则重载了<>用来支持读写。在Unix系统中,这些高层次的函数基于Unix的系统I/O函数来实现,多数时候我们都无需直接使用底层的Unix I/O。但学习Unix系统I/O能更好地...
分类:
移动开发 时间:
2015-05-16 23:23:24
阅读次数:
344
Linux IO时事检测工具iostat iostat命令用于检测linux系统io设备的负载情况,运行iostat将显示自上次运行该命令以后的统计信息。用户可以通过指定统计的次数和时间来获得所需的统计信息。 iostat -d -k 1 10 参数 -d 表示,显示设备(磁盘)使用状态;-k某些使...
分类:
移动开发 时间:
2015-05-16 14:48:48
阅读次数:
153
.....昨天我们讨论了标准 IO,今天主要说说系统 IO。1.文件描述符在 SYSIO 中贯穿了一个整形数,它就是文件描述符。对内核而言,所有打开的文件都是通过文件描述符引用的。它的作用与 STDIO 中的 FILE 结构体类似,但是它们的工作原理是完全不同的。它实际上是一个由内核保存的数组下标,...
分类:
其他好文 时间:
2015-04-16 01:00:48
阅读次数:
182
====文件IO====Linux系统IO操作都是使用文件描述符来代表打开的文件,一个非负的的整数,它被用来指所有类型的打开的文件,包括管道,FIFO,网络套接字,终端,设备和一般文件。每个进程都有自己的一套文件描述符经常使用的三个文件描述符是:标准输入(stdin, STDIN_FILENO, 0...
分类:
系统相关 时间:
2015-03-21 22:43:28
阅读次数:
248
page.37考虑这样一个磁盘系统,io请求以100个/秒的速率(用a表示)到达,请求服务时间R(s)是8ms,根据上述公式,磁盘性能的各种度量值计算如下:请求到达时间R(a)=1/a= 10ms请求服务时间R(s)=8ms利用率U=R(s)/R(a)=0.8 (80%)响应时间R=R(s)/(1-...
分类:
其他好文 时间:
2015-03-14 13:39:43
阅读次数:
110
操作系统的很多核心组件都是相互关联的,比如虚拟内存管理,物理内存管理,文件系统,缓存系统,IO,设备管理等等,都要放在一起来看才能从整体上理解各个模块到底是如何交互和工作的。这个系列的目的也就是从整体上来理解计算机底层硬件和操作系统的一些重要的组件是如何工作的,从而来指导应用层的开发。这篇讲讲文件系统的重要概念,为后面的IO系统做铺垫。
文件系统主要有三类
1. 位于磁盘的文件系统,在...
分类:
其他好文 时间:
2015-01-29 14:41:48
阅读次数:
245
linux下文件系统通常是通过虚拟文件系统(VFS)蔽下层具体文件系统操作的差异,为上层的操作提供一个统一的接口。文件系统底层都是用系统IO缓存层提供的块读写接口,实现逻辑块到物理块的映射。作为应用程序底层的存储逻辑,通用文件系统的目的是提供目录/文件形式的逻辑到物理磁盘的映射。 文件系统本...
分类:
系统相关 时间:
2015-01-16 18:48:41
阅读次数:
236
实验4-1:文件拷贝
实验目的:
熟悉Linux系统IO编程 实验要求: 1、按照io.h给出的接口实现通用io操作接口 2、利用io操作接口完成mycpy文件拷贝工具: 通过重定向完成文件拷贝功能: ./mycpy desfile 实验步骤: 1、实验代码:
#include #include #...
分类:
其他好文 时间:
2015-01-04 21:03:26
阅读次数:
176