本节主要内容:

系统IO原理:Linux

VFS  FD

pagecache

[java]

1文件系统的io

2内存和io关系

3网络io

任何程序都有

0:标准输入

1:标准输出

2:报错输出

/proc/$$进入当前进程目录

$$表示当前bash的pid

$BASHPID 也可以获取进程pid

/proc/$$/fd  进入当前进程的文件描述符目录,可以查看打开哪些文件

命令:lsof -op $$ 也可以查看当前进程的详细信息

文件重定向:

ls ./    /etc/    1> zzz02.out     2>&    1

语法注意:1> zzz02.out 必须在前,因为标准输出2需要重定向到标准输入1

一般都是重定向到文件,但是这里是标准输出重定向到标准输入,因此必须使用>&

管道  |   ------------非常重要

先掌握几个基本的命令

head -n 文件名   显示文件的前n行,如果不带n,默认显示前10行

tail -n 文件名   显示文件的后n行,如果n不带,显示后10行

问题:怎么显示第八行的数据呢???

通过管道可以实现

head -8 zzz.txt | tail -1

export   变量名   export后的变量,会成为环境变量

代码块---即执行多条指令

{ echo "123"; echo "abc"; }

原因是:管道两边都会起一个子进程,然后将两个子进程并在一起。执行完管道后,又进入了父进程,因此a还是1

原因:$$ 的优先级比 | 高            但是$BASHPID的优先级比  |  低

内存与IO,磁盘IO,网络IO相关推荐

  1. 实战:如何对磁盘和网络IO进行评估、监控、定位和优化?

    点击上方"朱小厮的博客",选择"设为星标" 后台回复"书",获取 后台回复"k8s",可领取k8s资料 生产中经常遇到一 ...

  2. 详解磁盘IO、网络IO、零拷贝IO、BIO、NIO、AIO、IO多路复用(select、poll、epoll)

    文章很长,但是很用心! 文章目录 1. 什么是I/O 2. 磁盘IO 3. 网络IO 4. IO中断与DMA 5. 零拷贝IO 6. BIO 7. NIO 8. IO多路复用 8.1 select 8 ...

  3. 高并发下的网络 IO 模型设计

    今天我们先聊一下高并发下的网络 IO 模型设计 高并发即我们所说的 C10K(一个server 服务 1w 个 client),C10M,写出高并发的程序相信是每个后端程序员的追求,高并发架构其实有一 ...

  4. 浅谈5种网络IO模型

    五种 IO 模型 1.阻塞式 IO 阻塞 IO 是最流行的 IO 模型 在网络 IO 的时候,进程发起 recvfrom 系统调用,然后进程就被阻塞了,什么也不干,直到数据准备好,并且将数据从内核复制 ...

  5. Linux网络IO精华指南

    hi,大家好,今天文章相当硬核,成长就在每天点滴中,希望大家吸取文中的营养,加固自己,坚持下去,祝愿大家早日打通任督二脉. PS: 深入理解操作系统内核 恭喜上面获取的同学,请上面的同学尽快联系我!( ...

  6. ​网络 IO 演变发展过程和模型介绍

    作者:jaydenwen,腾讯 pcg 后台开发工程师 在互联网中提起网络,我们都会避免不了讨论高并发.百万连接.而此处的百万连接的实现,脱离不了网络 IO 的选择,因此本文作为一篇个人学习的笔记,特 ...

  7. 网络 IO 演变过程

    作者:jaydenwen,腾讯 pcg 后台开发工程师 在互联网中提起网络,我们都会避免不了讨论高并发.百万连接.而此处的百万连接的实现,脱离不了网络 IO 的选择,因此本文作为一篇个人学习的笔记,特 ...

  8. 从网络IO看高性能框架

    讨论一个高性能框架甚至语言的时候,我们在讨论什么? 三大网络模型阻塞IO+多进程阻塞IO+多线程非阻塞IO+IO多路复用 五种网络IO简介 网络IO的本质 如何区分阻塞IO和非阻塞IO 如何区分同步和 ...

  9. 网络IO演变发展过程和模型介绍

    本文来说下网络IO演变发展过程和模型介绍 文章目录 概述 网络IO的发展 网络 IO 的各个发展阶段 网络的两个阶段 阻塞IO和非阻塞IO的区别 同步IO和异步IO的区别 阻塞IO 阻塞IO的概念 阻 ...

最新文章

  1. MySQL数据库排序order by(asc、desc)
  2. Hibernate简介2
  3. python3 寻找多个字典的公共键
  4. c++中override的应用
  5. 科大星云诗社动态20210510
  6. android获取自适应高度,Android中oncreate中获得控件高度或宽度的实现方法
  7. 如何在Java地毯下有效地清除问题
  8. 面试精讲之面试考点及大厂真题 - 分布式专栏 13项目中为什么要使用消息队列
  9. MFC单选按钮的使用
  10. 创业者在创业时经常会问到的一个问题
  11. Settings点击Location(位置)后右上角的开关button不会消失
  12. @Transactiona注解的使用
  13. hexo之next主题添加分类
  14. J2EE开发系列视频教程
  15. Bootstrap4颜色拾取器插件
  16. [转]ceph pg peering过程分析
  17. 解决执行HiveSQL时,报could not be cleaned up的错误
  18. Fluent残差图中continuity不收敛如何处理
  19. 洛达AirPods鉴别检测工具AB153x_UT,支持1562a 1562f
  20. cocos2dx腾讯实时语音sdk接入

热门文章

  1. 淘宝接口 TopAPi(转)
  2. WMS、WFS、WMTS、TMS
  3. pytesseract 安装错误总结
  4. python中的数据过滤
  5. 微信小程序医院门诊体检预约信息管理系统SSM-JAVA【数据库设计、论文、源码、开题报告】
  6. x86、x86-64、x64和amd64的区别(转)
  7. 高新技术企业认定中涉及的领域有哪些?
  8. win7产生大量evtx文件_Win7退役:用户还在坚守,为何微软却执意放弃?
  9. 程序员潜规则之痛——“JAVA 之父”也遭遇过
  10. ceilometer+gnocchi+influxdb