unix IO笔记】的更多相关文章

一.IO与文件映射 1.IO的共享与效率 read与write其中数据缓冲的大小 读取数据的缓冲:getpagesize 2.定位与定位读取(随机读取) read与write在操作的时候,自动移动读取位置. lseek读取定位,改变读取位置. pread/pwrite在指定位置读写. lseek函数说明:返回当前读取位置在文件中的绝对位置 off_set  lseek(int fd,//定位文件描述符号 off_t off,// 定位位置 int whence/ 文件开始位置/文件结束位置/文件…
系统级IO:输入输出是主存与外部设备(磁盘,终端,网络)之间拷贝数据的过程 输入:从IO设备拷贝数据到主存中 输出:从主存中拷贝数据到IO设备中 10.1 unix IO 所有的IO设备都被模型化为文件,而所有的输入输出都被当做对相应的文件的读和写来执行. 打开文件: (1)应用程序通过要求内核来打开相应的文件,内核返回一个非负整数(描述符),应用程序只需记住这个描述符,而相应信息 由内核来管理. (2)unix外壳在打开一个进程时,都打开了三个文件:标准输入(描述符0),标准输出(描述符1),…
POSIX中对同步IO和异步IO的规定: 同步IO操作:引起进程的阻塞直到IO操作完成,异步IO操作:IO操作不会引起进程阻塞 在UNIX下,有5中操作模型: 阻塞IO,非阻塞IO,IO复用,信号驱动IO,异步IO 按照网络上的说法,前四种是属于同步IO,第五种才属于异步IO,对于这个结论,我的理解是根据用户进程是否阻塞来判断的(而不是内核进程).关于同步和异步的一些讨论,可以参考http://bbs.chinaunix.net/viewthread.php?tid=947563 阻塞IO 这是…
第一:File类(主要获取文件名,判断文件是否存在,创建或者删除文件) 举个例子,代码如下: import java.io.File; public class Main{ public static void main (String[] args) { File file=new File("F:\\test"); GetFileName(file); } public static void GetFileName(File file){ if (file.exists()) {…
UNIX体系结构: 从严格意义上讲,可将操作系统定义为一种软件,它控制计算机硬件资源,提供程序运行环境.我们通常将这种软件称为内核(Kernel),因为他相对较小,而且位于环境的核心.图片显示了UNIX系统的体系结构. 内核的接口被称为系统调用(system call).公用函数库构建在系统调用接口只是,应用程序即可使用公用函数库,也可以使用系统调用.shell是一个特殊的应用程序,为运行其他应用程序提供一个接口. 登录: 系统口令文件通常是/etc/passwd.口令文件中的登录项由7个以冒号…
一.基础知识 1. 在普通方法和测试方法中文件路径的差异 在普通方法中:文件路径相当于在当前项目中,而不是当前Module(以项目为基准) 在测试方法中:文件路径相当于在当前Module中,而不是当前项目(以Module为基准) public static void main(String[] args) { File file = new File("hello.java"); //在main方法中,文件路径相当于在当前项目中,而不是当前Module //G:\IDEA_Projec…
1:Unix/Linux操作系统概述 要求:理解应用软件和操作系统的区别,掌握系统的Kernel(核心)和shell(外壳)之间的关系以及各自的作用 Solaris:Solaris 是Sun Microsystems研发的计算机 操作系统.它被认为是UNIX操作系统的衍生版本之一. 目前Solaris属于混合开源软件. 操作系统Kernel和shell Kernel:操作系统内核 操作系统内核是指大多数操作系统的核心部分.它由操作系统中用于管理存储器.文件.外设和系统资源的那些部分组成.操作系统…
API 网址:https://socket.io/get-started/chat/ 页面上引入: 服务器: 每一个socket可以触发一个断开连接事件: 如果需要使用jquery: 引入网页的jquery: 引入本地文件:需要设置静态资源的文件目录: 对某一个客户端传递事件:io.emit('事件名称',所需要传递的数据): 对所有的客户端传递事件:广播(broadcast ):…
当客户端发送admin命名空间下的连接,如果主连接也监听了connetion事件,主连接的connection事件会先触发执行,然后紧接着触发执行admin命名空间下的connection事件.如果客户端连接的是主连接,admin空间下的connection事件不会触发执行. //服务端代码 var app = express(); var server = require('http').createServer(app); var io = require('socket.io')(serv…
//服务端代码 var server = require('http').createServer(app); var io = require('socket.io')(server,{path:'/test',handshake:{xdomain:true}}); io.on('connection', function(socket){ /* … */ console.log('连接OK') socket.emit('online',{msg:'success'}) }); server.…