计算机基础 文件IO与网络IO 概述

本文知识点:

计算机IO类型有那些

Linux6种文件IO模型分别是那些

Linux5种网络IO模型分别是那些

前言

I/O输入/输出(Input/Output),计算机中常见的设备。从设备的角度出发有键盘、鼠标、显示器、打印机、网络。网络对于计算机而言可以充当输入也可以充当输出。从软件角度出发I/O是计算机中处理数据的通道,文件I/O系统、网络I/O等都是系统软件的一部分。

文件IO

在Linux系统中使用VFS屏蔽系统底层的文件系统差异。VFS全名Virtual Filesystem,作用是为用户应用程序提供open、read、write等函数来操作I/O,为用户提供了一个统一的、抽象的、虚拟的文件系统,提供统一的对外API,使用户程序调用时无需感知底层的文件系统,只是在真正执行读写操作时才调用之前注册的文件系统相对应的函数。VFS相当于一个门面,对底层不相同的文件系统进行包装后适配提供统一的接口供I/O应用程序使用。

VFS提供了6种I/O:

  • Bufferd I/O : 缓存I/O又叫作标准I/O,是大多数文件系统的默认IO操作,经过PageCache
  • Direct I/O : 直接I/O,By Pass PageCache。offset、length需要对齐到block_size。
  • Sync I/O:同步I/O,即发起I/O请求后被阻塞直到完成。缓存I/O和直接I/O都属于同步I/O。
  • Async I/O :异步I/O,即发起I/O请求后不会被阻塞,内核完成后回调。
  • Write Back : Bufferd
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值