os202

OS202


Project maintained by ferenica Hosted on GitHub Pages — Theme by mattgraham

«

Top 10 Lists of Week 10

  1. I/O Hardware
    An I/O system is required to take an application I/O request and send it to the physical device, then take whatever response comes back from the device and send it to the application. I/O devices can be divided into two categories − Block devices and Character devices. This website is equipped with pictures

  2. Direct Memory Access (DMA)
    Still on the same website as the previous point, this website also describes direct memory access i.e. means CPU grants I/O module authority to read from or write to memory without involvement. and of course described with pictures.

  3. Difference Between Interrupt and Polling in OS
    Interrupt and Polling are the two ways to handle the events generated by the devices that can happen at any moment while CPU is busy in executing another process. Polling and Interrupt let CPU stop what it is currently doing and respond to the more important task. So, on this site will explain to you about the differences between the two with comparison charts and also definitions.

  4. Interrupt-Driven I/O
    Interrupt driven I/O is an alternative scheme dealing with I/O. Interrupt I/O is a way of controlling input/output activity whereby a peripheral or terminal that needs to make or receive a data transfer sends a signal. This will cause a program interrupt to be set. At a time appropriate to the priority level of the I/O interrupt.

  5. Applications of Input/Output Interface
    Application of I/O is that we can say interface have access to open any file without any kind of information about file i.e., even basic information of file is unknown. Each type of operating system has its own category for interface of device-drivers and on this site will be described in tabular form.

  6. Blocking and Nonblocking I/O
    Most I/O requests are considered blocking requests, meaning that control does not return to the application until the I/O is complete. The delayed from systems calls such read() and write() can be quite long. Using systems calls that block is sometimes called synchronous programming. so, what is non blocking? you can visit this website for more information.

  7. Vectored I/O
    Vectored-IO is sometimes called “scatter-gather” IO. The idea is that instead of doing multiple read(2) or write(2) system calls for each string, your program creates a vector of pointers to all the strings you wish to read/write and then does a single system call referencing this vector.

  8. Kernel I/O Subsystem
    The kernel provides many services related to I/O. Several services such as scheduling, caching, spooling, device reservation, and error handling – are provided by the kernel, I/O subsystem built on the hardware and device-driver infrastructure. The I/O subsystem is also responsible for protecting itself from the errant processes and malicious users.

  9. What is Streams?
    STREAMS is a general, flexible programming model for UNIX system communication services. STREAMS defines standard interfaces for character input/output (I/O) within the kernel, and between the kernel and the rest of the UNIX system. The mechanism consists of a set of system calls, kernel resources, and kernel routines.

  10. I/O Performance
    I/O is a major factor in system performance. It places heavy demands on the CPU to execute device-driver code and to schedule processes fairly and efficiently as they block and unblock. The resulting context switches stress the CPU and its hardware caches