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
234 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

CRISP-DM Methodology

Blog banner

Simple AI Symptom Diagnosis Using LISP – Rule-Based Expert System

Blog banner

Puri Jagannath temple

Blog banner

Note on Process, Process creation and Process termination

Blog banner

Exploring Virtual Machines and Computer Forensic Validation Tools

Blog banner

Threads

Blog banner

Interrupts - Types, Working & Importance

Blog banner

Segmentation and paging concept

Blog banner

Stories Woven in Silk: The Meaning Behind Patola Motifs

Blog banner

Memory Management

Blog banner

Fudgy Tahini Date Chocolate Bars

Blog banner

What is Password Cracking ? and it's Techniques.

Blog banner

Art and Culture of Rajasthan

Blog banner

Environmental Management using GIS

Blog banner

Cache Memory

Blog banner

5 Stages of Digital Marketing

Blog banner

Decrypting Cryptocurrency: Tracing Transactions in Cyber Investigations

Blog banner

Hosting basics

Blog banner

Understanding Toddler Tantrums: What They Really Mean

Blog banner

Hash password! Is it really secured?

Blog banner

Animal’s have my heart

Blog banner

Caching windows

Blog banner

Multiprocessor and Multicore Organization

Blog banner

Virtual machine.

Blog banner

Evolution of Operating Sytems

Blog banner

Internet: The Vast Ocean Of Knowledge.

Blog banner

Threads Concurrency: Mutual Exclusion and Synchronization

Blog banner

Asana

Blog banner

Top 4 Places To Stay In Copenhagen

Blog banner

Artificial Intelligence (AI)

Blog banner

What makes Nugget RC Racing Florida’s Most Exciting Racing Events?

Blog banner

A-B-C of Networking: Part-1 (Basics)

Blog banner

The New Classic: Indo Western Patola Outfits for Today’s Woman

Blog banner

INTERNET

Blog banner

How To Invest in Indian Stock Market For Beginners. ~ Tutorial 2 (NSDL And CSDL) Continued...

Blog banner

How to Encrypt and Decrypt Using GNU PGP

Blog banner

Security Issues

Blog banner

Phishing Isn't Getting Smarter — You're Just Seeing More of It

Blog banner

Deadlock

Blog banner

Real Time Scheduling

Blog banner

Consumer to consumer business mode

Blog banner

Why Makhana Is Becoming India’s Favourite Healthy Snack?

Blog banner