简介这篇文章主要介绍了计算机里的缓冲区以及相关的经验技巧,文章约916字,浏览量249,点赞数9,值得推荐!

下面介绍缓冲区的知识。

一、什么是缓冲区

缓冲区又称为缓存,它是内存空间的一部分。也就是说,在内存空间中预留了一定的存储空间,这些存储空间用来缓冲输入或输出的数据,这部分预留的空间就叫做缓冲区。

缓冲区根据其对应的是输入设备还是输出设备,分为输入缓冲区和输出缓冲区。

二、为什么要引入缓冲区

我们为什么要引入缓冲区呢?

比如我们从磁盘里取信息,我们先把读出的数据放在缓冲区,计算机再直接从缓冲区中取数据,等缓冲区的数据取完后再去磁盘中读取,这样就可以减少磁盘的读写次数,再加上计算机对缓冲区的操作大大快于对磁盘的操作,故应用缓冲区可大大提高计算机的运行速度。

又比如,我们使用打印机打印文档,由于打印机的打印速度相对较慢,我们先把文档输出到打印机相应的缓冲区,打印机再自行逐步打印,这时我们的CPU可以处理别的事情。

现在您基本明白了吧,缓冲区就是一块内存区,它用在输入输出设备和CPU之间,用来缓存数据。它使得低速的输入输出设备和高速的CPU能够协调工作,避免低速的输入输出设备占用CPU,解放出CPU,使其能够高效率工作。

三、缓冲区的类型

缓冲区 分为三种类型:全缓冲、行缓冲和不带缓冲。

1、全缓冲

在这种情况下,当填满标准I/O缓存后才进行实际I/O操作。全缓冲的典型代表是对磁盘文件的读写。

2、行缓冲

在这种情况下,当在输入和输出中遇到换行符时,执行真正的I/O操作。这时,我们输入的字符先存放在缓冲区,等按下回车键换行时才进行实际的I/O操作。典型代表是键盘输入数据。

3、不带缓冲

也就是不进行缓冲,标准出错情况stderr是典型代表,这使得出错信息可以直接尽快地显示出来。

四、缓冲区的刷新

大家要好好理解刷新的意思,缓冲区的刷新是指将将缓冲区已有的数据输出到指定地点,这个时候缓冲区就空了,然后缓冲区再接收新来的数据

下列情况会引发缓冲区的刷新:

缓冲区满时;

关闭文件。

可见,缓冲区满或关闭文件时都会刷新缓冲区,进行真正的I/O操作。

比如在Linux下,操作命令行就属于常见的行缓冲模式

输入一行命令例如ls,命令ls就会进入到缓冲区内,不输入回车的话,什么也不会发生,当输入回车就会执行真正的IO操作

计算机 缓冲区,计算机里的缓冲区相关推荐

  1. 计算机在数学专业中的应用与探索,计算机在数学里的应用论文

    多媒体在教学中的应用日渐广泛,将多媒体教学应用到数学的教学中,可以对传统的数学教学中存在的不足进行革新,为数学教学注入新鲜的血液,起到提高数学教学效果的作用.下面是学习啦小编为大家整理的计算机在数学里 ...

  2. 大学计算机典型试题解析,大学计算机考试题库里的全套习题解析.docx

    <大学计算机考试题库里的全套习题解析.docx>由会员分享,可在线阅读,更多相关<大学计算机考试题库里的全套习题解析.docx(10页珍藏版)>请在文客久久网上搜索. 1.大学 ...

  3. fread读取同一个文件得到缓冲区大小不同_缓冲区——计算机科学

    起源 众所周知,计算机中 CPU 的速度是非常快的,而外部设备(比如磁盘.键盘. 显示器.打印机等)的速度则慢得多. 如果 CPU 直接从外设读取数据或者计算机CPU向外设输出信息时,外设很难跟 上 ...

  4. 计算机科学与技术属于教育技术学么,计算机教育-计算机教育与教育技术学有什么不同吗?我学的专业是计算机教育,我想 爱问知识人...

    你好! 推荐地址: 建议询问有关部门和学校! 教育技术学 学科:教育学 门类:教育学类 专业名称:教育技术学 业务培养目标:本专业培养能够在新技术教育领域从事教学媒体和教学系统的设计.开发.运用.管理 ...

  5. 手机版计算机音乐,计算机音乐手机版

    <计算机音乐手机版>这是一款手机上的音乐计算机软件,主打的功能可不是计算什么复杂的公式喔!这款软件,专为音乐而生!将计算机变成手机里的乐器!让你轻松通过手机计算机,进行演奏!你不在需要购买 ...

  6. edvac是商用计算机吗,计算机基础知识78228

    计算机基础知识78228 (52页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 25.9 积分 计算机基础知识第1题: 是现代通用计算机的雏形.A宾州人学 ...

  7. 计算机底层——计算机的发展史

    计算机发展史与系统层次结构 我们现在所使用的计算机包括笔记本电脑,台式机都属于第四代计算机,其中 第一代是电子管,第二代是晶体管,第三代是集成电路(中小),第四代是大规模集成电路.世界上第一台通用计算 ...

  8. 计算机组成原理——计算机基本组成

    文章目录 其他文章 计算机的基本硬件组成 CPU 内存 主板 I/O 设备 显卡 冯若依曼和哈佛 冯·诺依曼体系结构概述 冯·诺依曼体系工作原理(CPU工作原理) 哈佛结构 哈佛结构和冯诺依曼结构区别 ...

  9. 计算机考试一般什么内容是什么,计算机一级计算机考试内容是什么

    在这个人人都要使用计算机的时代,计算机考试应运而生,那么计算机一级考试内容有哪些呢.以下是由出国留学网编辑为大家整理的"计算机一级计算机考试内容是什么",仅供参考,欢迎大家阅读. ...

最新文章

  1. 封装了一下我佛山人4.0 (支持vs2005)asp.net 页面验证
  2. SLAM中大场景下室内外区域的地图管理方法
  3. jquery遍历集合数组标签
  4. 指代消解论文阅读(一): END-TO-END NEURAL COREFERENCE RESOLUTION REVISITED: A SIMPLE YETEFFECTIVE BASELINE
  5. 怎样进入服务器修改东西,进入服务器修改数据库
  6. php 跨区域,PHP跨时区的功能实现
  7. gRPC真要取代WebApi了,你还学得过来吗?
  8. android自定义的生命周期,android 自定义控件之ViewGroup生命周期执行步骤(示例代码)...
  9. python具有可扩展的特性_Python的特点
  10. 求最大子数组(贪心算法)
  11. 音频录制和Speech语音识别(ios10)
  12. 【oracle】Linux环境安装Oracle客户端
  13. dage手法之 头部和banner ad tpl_header
  14. FFmpeg常用错误码整理
  15. EMC辐射骚扰整改案例分析
  16. 曾国藩【挺经】全文 不错的文章,值得学习!
  17. Android如何实现音频合成
  18. NetAlly Aircheck G2无线网络测试仪技术参数
  19. U盘制作-BGA焊接练习
  20. Qt菜单栏-工具栏-状态栏

热门文章

  1. 【Linux】设备和磁盘分区|/dev/sda
  2. RK3228H开发之准备、编译烧写整理
  3. 7-1 ATM机类结构设计(二) (100 分)
  4. NYOJ-弟弟的作业
  5. 网能云平台,掌聚网能助力机房运维的利器
  6. oracle sysdate取年月日,oracle获取当前年月日时分秒季度周
  7. 浅谈:智能化变电站在线监测系统
  8. Working with humanoid animations
  9. python cnn 实例_在Keras中CNN联合LSTM进行分类实例
  10. 【重磅整理】提前看287篇ICLR-2021 深度强化学习领域论文得分汇总列表