Linux system devices are computer devices that use the Linux kernel and may be part of the GNU operating system; devices in the Linux system can be divided into three categories: character devices, block devices and network devices; among them, character devices can A device that is accessed like a stream. A block device is a device that must be accessed in blocks when performing a TO operation in a Linux system. A network device can be either a hardware device such as a network card or a pure software device such as a loopback device. .
#The operating environment of this tutorial: linux5.9.8 system, Dell G3 computer.
What are Linux system devices?
Linux devices or Linux-based devices are computer devices that use the Linux kernel and possibly some GNU operating systems. They tend to be minimalist and purpose-built, and may be environmentally friendly and produce less e-waste per unit.
What are the categories of Linux devices?
1. Linux devices
Devices in the Linux system can be divided into three categories: character devices, block devices and network devices.
Character device
A character device is a device that can be accessed like a byte stream. When a read or write request is made to a character device, the corresponding The IO operation occurs immediately. Many devices in the Linux system are character devices, such as character terminals, serial ports, keyboards, mice, etc. In embedded Linux development, the most common ones are character devices and drivers.
Block device
Block device is a device that must be accessed in blocks when performing TO operations in the Linux system. Block devices can be installed File system. The block device driver will use a piece of system memory as a buffer, so issuing read and write accesses to the block device does not necessarily result in hardware I/O operations immediately. Common block devices in Linux systems include hard disks, floppy drives, etc.
Network equipment
Network equipment can be either a hardware device such as a network card or a pure software device such as a loopback device. Network devices are driven by the Linux network subsystem and are responsible for sending and receiving data packets, rather than stream devices. Therefore, network devices do not have nodes in the Linux system file system. Access to network devices is generated through socket calls, rather than ordinary file operations such as open/closc and read/write.
2. The status of the driver in Linux
The driver is the bridge between the device and the user in the Linux system. In the Linux system, accessing the device must be operated through the device driver, and user programs cannot Directly operate the equipment. The relationship between hardware, drivers and user programs in the Linux system is shown in the figure.
The driver runs in the kernel space. User programs can only access and operate the hardware and data transferred by the hardware device through the system calls provided by the kernel, VFS and the driver. It must also go through the driver, VFS and system calls before it can be received by the user program. Therefore, device drivers are bridges and channels for applications to access system devices and transfer data.
Related recommendations: "Linux Video Tutorial"
The above is the detailed content of What are linux system devices. For more information, please follow other related articles on the PHP Chinese website!