Device management in operating system implies the management of the I/O devices such as a keyboard, magnetic tape, disk, printer, microphone, USB ports, scanner, camcorder etc.as well as the supporting units like control channels. The basics of I/O devices can fall into 3 categories:
Block device: it stores information in fixed-size block, each one with its own address.Fr example, disks.
Character device: delivers or accepts a stream of characters. The individual characters are not addressable. For example printers, keyboards etc.
Network device: For transmitting data packets.
The main functions of device management in the operating system
An operating system or the OS manages communication with the devices through their respective drivers. The operating system component provides a uniform interface to access devices of varied physical attributes. For device management in operating system:
- Keep tracks of all devices and the program which is responsible to perform this is called I/O controller.
- Monitoring the status of each device such as storage drivers, printers and other peripheral devices.
- Enforcing preset policies and taking a decision which process gets the device when and for how long.
Allocates and Deallocates the device in an efficient way.De-allocating them at two levels: at the process level when I/O command has been executed and the device is temporarily released, and at the job level, when the job is finished and the device is permanently released.
- Optimizes the performance of individual devices.
Types of devices
The OS peripheral devices can be categorized into 3: Dedicated, Shared, and Virtual. The differences among them are the functions of the characteristics of the devices as well as how they are managed by the Device Manager.
Such type of devices in the device management in operating system are dedicated or assigned to only one job at a time until that job releases them. Devices like printers, tape drivers, plotters etc. demand such allocation scheme since it would be awkward if several users share them at the same point of time. The disadvantages of such kind f devices s the inefficiency resulting from the allocation of the device to a single user for the entire duration of job execution even though the device is not put to use 100% of the time.
These devices can be allocated o several processes. Disk-DASD can be shared among several processes at the same time by interleaving their requests. The interleaving is carefully controlled by the Device Manager and all issues must be resolved on the basis of predetermined policies.
These devices are the combination of the first two types and they are dedicated devices which are transformed into shared devices. For example, a printer converted into a shareable device via spooling program which re-routes all the print requests to a disk. A print job is not sent straight to the printer, instead, it goes to the disk(spool)until it is fully prepared with all the necessary sequences and formatting, then it goes to the printers. This technique can transform one printer into several virtual printers which leads to better performance and use.
Ways to access a device in device management in operating system
In this, a CPU continuously checks the device status for exchanging data. The plus point is that it is simple and the negative point is – Busy-waiting.
A device controller notifies the corresponding device driver about the availability of the device. The advantages can be a more efficient use of CPU cycles and the drawbacks can be data copying and movements and slow for character devices-one interrupt per keyboard input.
A device driver is an operating system component which is responsible for the hiding f complexity of an I/O device so that the OS can access various devices in a uniform manner.
A device controller performs conversion between serial bit stream and a block of bytes, do error correction if necessary and has 2 main components; a device registers to communicate with the CPU and a Data buffer that an OS can read or write.
Direct memory access (DMA):-
To perform data movements additional controller bought into use. The benefit of such a method is that CPU is not involved in copying data but a con is that a process cannot access in-transit data.
This methodology access advice makes use of two buffers so that while one is being used, the other is being filled. Such a way is quite popular in graphics and animation so that the viewer does not see the line-by-line scanning.
Two hard-disks configurations in device management in operating system
Mobile-head magnetic disk storage:-
Both the reading/writing head moves and the disk spins. It is usually formatted on both sides and data is recorded on tracks. Typically there is more than one disk(platter), and they are arranged in a stack on a common spindle and have Read/Write heads n both sides. All of the heads move in unison.
Flexible-head magnetic disk storage:-
Its very fast when compared to its mobile counterpart but it is expensive to the manufacture and has less storage space as the tracks have to be positioned farther apart. They are often used in aircraft or space applications where speed is an important factor.
Optical disk storage in device management in operating system
Data can be stored optically than magnetically due to advances in laser technology, for example, CDs and DVDs. Optical disks are usually single continuous spiral track and not tracks as a series of concentric circles. Magnetic disks spin at a constant speed so the tracks on other outer rings of magnetic disks have to have larger sectors and those tracks nearer the center have small tracks. On the other hand, optical disks can change the speed to reading, so the sector size is the same in the outside or inside.
A high-intensity laser bean burns indentations in the disk to write to an optical disk. These burned areas are called pits( represents 0’s) and the unburned flat areas are called lands (represents 1’s).
The 3 important performance measures in optical disk storage are data transfer rate(measures the amount of data that can be read from the disk, unit is megabytes per second-MB/s), average access time (measures how long it takes to move the disk head to a specific place on the disk, unit is milliseconds-ms), and cache size(it saves the data to be re-read again by the user and is measured n kilobytes-KB).
Components of an I/O system
The CPU makes a lot of I/O requests and the I/O channels work to coordinate the devices to synchronize the fast speed of the CPU with the slower speeds of the I/O devices. The I/O control units are attached to several similar devices and control these devices based on instructions from the channel.