wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

I/O buffer and its techniques

profile
Neeti undefined
Sep 09, 2024
0 Likes
0 Discussions
203 Reads

A buffer is a memory area that stores data being transferred between two devices or between a device and an application. In computer I/O buffering techniques are used to manage transfer of data between memory and I/O devices. This allows the CPU and I/O devices to work at their speeds without having to wait for each other, improving system’s overall performance.

Computers have many different devices that operate at varying speeds, and a buffer is needed to act as a temporary placeholder for everything interacting. This is done to keep everything running efficiently and without issues between all the devices, programs, and processes running at that time.

There are 3 types of buffers in OS:

1.    Single buffer: Using one buffer to store data temporarily. A buffer is provided by the operating system to the system portion of the main memory.

Block oriented device:

·     The system buffer takes the input.

·     After taking the input, the block gets transferred to the user space by the process and then the process requests for another block.

·     Two blocks work simultaneously, when one block of data is processed by the user process, the next block is being read in.

·     OS can swap the processes.

·     OS can record the data of the system buffer to user processes.

Stream oriented device:

·     Line- at a time operation is used for scroll-made terminals. The user inputs one line at a time, with a carriage return signaling at the end of a line.

·     Byte-at-a-time operation is used on forms mode, terminals when each keystroke is significant.

Buffering in Operating System


2.    Double Buffer: In this technique the operating system Uses two buffers to allow continuous data transfer between two process or two devices.

Block oriented:

·     There are two buffers in the system.

·     One buffer is used by the driver or controller to store data while waiting for it to be taken by higher level of the hierarchy.

·     Other buffer is used to store data from the lower level module.

·     Double buffering is also known as buffer swapping.

·     A major disadvantage of double buffering is that the complexity of the process gets increased.

·     If the process performs rapid bursts of I/O, then using double buffering may be deficient.

         Stream Oriented:

·     Line- at a time I/O, the user process need not be suspended for input or output, unless process runs ahead of the double buffer.

·     Byte- at a time operations, double buffer offers no advantage over a single buffer of twice the length.


3.    Circular Buffer: In this technique the OS Uses a circular buffer to manage continuous data streams efficiently.

·     When more than two buffers are used, the collection of buffers is itself referred to as a circular buffer.

·     In this, the data do not directly pass from the producer to the consumer because the data would change due to overwriting of buffers before they had been consumed.

·     The producer can only fill up to buffer i-1 while data in buffer i is waiting to be consumed.


Comments ()


Sign in

Read Next

File system implementation

Blog banner

A-B-C of Networking: Part-3 (Topology [Bus & Star])

Blog banner

Demystifying Cryptography: A Beginner's Guide

Blog banner

Video games

Blog banner

The Role of Teachers in Building a Child’s Confidence

Blog banner

Optimization of operating system design

Blog banner

What is Brute Force Attack? How to defend against it?

Blog banner

Building a Better You: Fitness Tips and Inspiration.

Blog banner

SQL Injection

Blog banner

Paralysis/Paralysis Stroke

Blog banner

Discover The Top 3 Places To Stay in London

Blog banner

Memory Management

Blog banner

Security Issues and Countermeasures

Blog banner

Digital Forensics Challenges and Tools

Blog banner

Smartphone Security: Vulnerabilities and Attacks

Blog banner

Facebook Shut Down an AI Program!!! Facebook AI bots became Terminators???

Blog banner

Memory input output management

Blog banner

Risk factors in service transistion

Blog banner

Bitcoin sent using radio waves! No internet!

Blog banner

Introduction to Solidity Programming for Blockchain Development

Blog banner

What if COVID does not exist!

Blog banner

Instagram

Blog banner

Uber

Blog banner

rupee

Blog banner

MODERN OPERATING SYSTEM

Blog banner

How Cyber Forensics use in AI

Blog banner

Knowledge Management in Continual Service improvement (CSI)

Blog banner

What Makes Patola the Queen of Silk?

Blog banner

Security in Cloud Computing Environment using cryptography - Rushabh Modi

Blog banner

Improving defences Proxy Device(defense in depth)

Blog banner

MIDDLE CLASS MELODIES!!

Blog banner

Note Taker App

Blog banner

38_Exploring The Honeynet Project

Blog banner

Corporate Discipline.

Blog banner

Record Blocking

Blog banner

Modern operating system

Blog banner

ProofHub

Blog banner

SNAPCHAT

Blog banner

IT Service Continuity Management

Blog banner

Ola

Blog banner

21ST CENTURY PATRIARCHY

Blog banner

Be you

Blog banner