1. Character Devices: Another type of I/O device isCharacter device. Character devicecharacterSends or receives a stream of characters for units, regardless of any block structure. The character device is not addressable and does not have any seek operations. Common character devices arePrinters, network devices, mice, and most other devices other than disks.

  1. Device ControllerThe device controller is the system that processes incoming and outgoing signals from the CPU. The device is connected to the computer through a plug and socket, and the socket is connected to the device controller.
  2. ECC(Error-Correcting Code): Refers to the memory that can implement error checking and error correction techniques.
  3. I/O port: Also known as an input/output port, it is a memory address used by software to communicate with hardware on a computer.
  4. Memory mapped I/O: Memory-mapped I/O addresses memory and I/O devices using the same address space, that is, memory-mapped I/O devices share the same memory address.
  5. Port mapped I/O(Port-mapped I/O,PMIO): In PMIO, memory and I/O devices have separate address Spaces. Port mapped I/O typically uses a special CPU instruction that performs I/O operations.
  6. DMA (Direct Memory Access)Direct memory access, a function of computer systems that allows certain hardware systems to access memory independently of the CPU. Without DMA, when the CPU executes input/output instructions, it is usually completely occupied during the entire read or write operation and therefore cannot perform other work. With DMA, the CPU first initiates the transmission signal, then performs other operations while the transmission is taking place, and finally receives the interrupt from the DMA controller (DMAC) when the operation is complete. The execution is complete.

  1. Cycle stealing: Many buses can operate in two modes: one-word per trip and block per trip. Some DMA controllers can also operate in both ways. In the former pattern, the DMA controller requests a word to be passed and gets it. If the CPU wants to use the bus, it must wait. The device may sneak in and steal a bus cycle from the CPU, slightly delaying the CPU. It is similar to direct memory access (DMA) and allows the I/O controller to read or write to RAM without CPU intervention.

  2. Burst mode: Refers to the condition in which the device transmits data repeatedly without repeating all the steps required for each data to be transmitted in a separate transaction.

  3. Interrupt Vector table: The entry address used to form the corresponding interrupt service program or the head address used to store the interrupt service program is called the interrupt vector. The interrupt vector table is a set of interrupt vectors, which are the addresses of interrupt handlers.

  4. Precise interrupts: Precise interrupts are those that keep the machine in good condition and have the following characteristics

  • The PC (program counter) is kept in a known place
  • All instructions prior to the instruction to which the PC points have been fully executed
  • None of the instructions after the one the PC points to are executed
  • The execution state of the instruction to which the PC points is known
  1. Imprecise interrupts: Interrupts that do not meet these requirements, with uncertain timing and completion of instructions, and very difficult to recover from.

  2. Device Independence: We write applications that access any device without specifying a specific device in advance. For example, if you write an application that reads files from a device, the application can read files from a hard disk, DVD, or USB instead of having to customize the application for each device. This is the concept of device independence.

  1. UNC(Uniform Naming Convention): UNC is a standard for naming and accessing network resources, such as network drives, printers, or servers. For example, in MS-DOS and Microsoft Windows, a user can access a shared resource by typing or mapping to a share name similar to the following example.
\\computer\path
Copy the code

However, in UNIX and Linux, you would write something like this

//computer/path
Copy the code
  1. Mounting (Mounting) Mounting means that the operating system (OS) allows users to access directories and files stored on disks and CD-RoMs through the file system.

  2. Error handling: Error handling is the process of responding to and recovering from Error situations that exist in a software application.

  3. Synchronous blocking: Synchronization is blocked and the CPU must wait for the result of synchronous processing.

  4. Asynchronous: Asynchrony is driven by interrupts, and the CPU does not wait for the result of each operation to perform other operations

  5. Buffering: A buffer is a temporary storage area of memory designed to speed up memory access. For frequently accessed data and instructions, the CPU should access buffers rather than memory

  6. Programmed input — Output,PIO: It refers to a method of transmitting data between the CPU and peripheral devices such as network adapters or ATA storage devices.

  7. Polling (polling) : Polling is the process by which a client program actively accesses each device to obtain synchronization status.

  1. Busy waiting: When a process is in a critical region, any process attempting to enter its critical region must wait and be in a busy state. Testing a variable continuously until a value appears is called busy, etc.

  2. Reentrant: If a program or code is interrupted at any time and the operating system calls another program or code that calls a subroutine and runs correctly, this phenomenon is called reentrant. That is, while the subroutine is running, the thread of execution can come in and execute it again, still getting the results expected at design time.

  3. Major Device Number and Minor device number: Each device has a major device number and minor device number. Primary numbers are larger, more general categories (e.g., hard disks, I/O devices, etc.), while secondary numbers are more specific (i.e., telling the device which bus to connect to).

  4. Double buffering: This refers to the use of multiple buffers to hold blocks of data, each buffer holding a portion of the data block, which is then pieced together by reading from multiple buffers.

  5. Circular buffer: A buffer that is placed end to end and used to buffer a stream of data.

  1. Spooling: Spooling is a special form of multi-program that replicates data between different devices. In modern systems, it is commonly used as an intermediary between computer applications and slow peripherals such as printers.

  2. Daemons: In a computer, a Daemon is a computer program that runs as a background process, rather than under the direct control of an interactive user.

  3. Logical Block Addressing (LBA) : Logical Block addressing is a general scheme for specifying the location of blocks of data stored on computer storage devices.

  4. RAID: A Redundant Array of Inexpensive Disks or drives. It is a data storage virtualization technology that combines multiple physical disk drive components into one or more logical units to implement data redundancy and improve performance.

  1. MBR(Master Boot Record)A master boot record (MBR) is information in the first sector of any hard disk or floppy disk that identifies how and where the operating system is placed so that it can be loaded into the computer’s main or random-access memory.

FCFS (First-Come, First-Served)

  1. SSF (Shortest Seek First) is an improvement on the first-in, first-out (FIFO) algorithm, which shorts the average response time by reducing the total magnetic arm movement.

  2. Stable storage: It is a category of computer storage technology that ensures that any given write operation is atomic.

  3. Clocks: Also known as timers. Typically, a clock is a microchip that regulates the timing and speed of all computer functions. Inside the chip is a crystal that vibrates at a specific frequency when electricity is turned on. The shortest time any computer can perform is one vibration of a clock or clock chip.

  4. QR Code: A kind of two-dimensional Code, its full name is quick response matrix graph Code, can quickly respond. Generally applied to mobile phone reading code operation, the two-dimensional code on the domestic train ticket is the QR code

  1. The graphics card (Video card), is one of the most basic components of a personal computer, is used to convert the display information required by the computer system to drive the display, and provide the display line by line or interlaced scanning signal, control the correct display of the display, is connected to the display and PC motherboard important components, isThe man-machine dialogueOne of the most important equipment.

  1. Graphics Device Interface (GDI) is an application program Interface provided by Microsoft Windows. It is also the core component used to represent Graphics objects and transmit them to output devices such as monitors and printers.

  2. Device Context: A Device context is a Windows data structure that contains information about the graphical properties of a device, such as a display or printer. All drawing calls are made through the device Context object, which encapsulates the Windows API for drawing lines, shapes, and text. Device context can be used to draw to a screen, printer, or metafile.

  3. Bitmap: In computers, a bitmap is a mapping in place from a field (for example, an integer range). Also called a bitarray or bitmap index.

  4. Resistive touchscreens: Resistive touchscreens work based on the pressure exerted on them. A resistive screen consists of many layers. When the screen is pressed, the external rear panel is pushed to the next layer, which feels the pressure applied and records the input. Resistive touch screens are versatile and can be operated with fingers, nails, a stylus or any other object.

  1. Capacitive touchscreenCapacitive touch screens work by sensing the electrical properties of an object, usually the skin on the fingertip. Capacitive screens on mobile phones or smartphones usually have glass surfaces and do not rely on pressure. It’s more responsive than resistive screens when it comes to gestures such as swiping and pinching. Capacitive touch screens can only be touched with a finger, not a regular stylus, glove or most other objects in response.

  1. A deadlock (deadlock)Deadlocks are commonly used in concurrent situations,A deadlockIs a state in which each member in a deadlock is waiting for another member (including itself) to take action.

I’m sure you’ve seen this picture

  1. Preemptable Resource: Can be preempted from the process that owns it without any side effects.

  2. Nonpreemptable Resource: On the contrary, if a resource is preempted, an error occurs in the process or task.

  3. System checkpoints: System checkpoints are bootable instances of an operating system (OS). A checkpoint is a snapshot of a computer at a specific point in time.

  4. Two-phase locking (2PL) : It is often used for concurrency control of databases to ensure serialization

This approach uses database locks in two phases:

  • Expansion phase: Locks are locked, no locks are released

  • Shrink phase: Locks are released one after another, no new locks are added

  1. Livelock: a Livelock is similar to a deadlock, except that it involves only the state of a process changing from one another, not progress. To take a real world example, life locks are issued when two people meet in a narrow hallway, each trying to be polite by moving aside to let the other pass, but ending up swaying left and right without making any progress because they are always moving the same way at the same time.

  2. Starvation: In a deadlock or live lock state, resources may be requested at any time, and while scheduling strategies can determine that some processes receive resources at a given time, some never do. Processes that never have access to resources are prone to hunger.

  3. Sandboxing: Sandboxing is a software management strategy that isolates an application from critical system resources and other programs. It provides an additional layer of security to prevent malicious software or harmful applications from adversely affecting your system.

  4. Virtual Machine Monitor (VMM) : Also known as hypervisor, creates the illusion of a heterogeneous Virtual Machine on the same physical Machine.

  1. Virtualization is a resource management technology that abstracts and transforms the physical resources of a computer (CPU, memory, disk space, network adapters, etc.) into one or more computer configuration environments.

  2. Cloud: The cloud is by far the most important and fashionable way to play virtual machines.

  3. Interpreter: An interpreter is a program that interprets a programming language line by line. Each time you run a program, you have to run it in another language, so the interpreter’s programs run slowly. It does not translate the entire program at once, but runs it as soon as it translates a line of program description, then translates the next line, runs it again, and so on.

  4. Paravirtualization: The purpose of paravirtualization is not to render avirtual machine identical to the underlying hardware, but to provide a software interface that is similar but not identical to the hardware interface.

  5. Full virtualization: Full virtualization is a type of hardware virtualization that allows unmodified guest operating systems to run in isolation. With full virtualization, hardware characteristics are mapped to the virtual machine, including complete instruction sets, I/O operations, interrupts, and memory management.

  6. Guest operating system (GUEST OPERATING system) : The guest operating system is installed after the operating system on the computer. The guest operating system can be part of the partition system or the virtual machine Settings. The guest operating system provides an alternate operating system for the device.

  7. Host Operating system: The host operating system is the primary operating system installed on the hard disk drive of a computer system. In most cases, there is only one host operating system.

  8. Block Devices: A block device is a device capable of storing fixed-size chunks of information, which can read and (optionally) write data in fixed-size chunks, sectors, or clusters. Each block has its own physical address. Typically block sizes range from 512 to 65536. All information transmitted will be in contiguous chunks. The basic feature of a block device is that each block is opposite and can read and write independently. Common block devices include hard disks, Blu-ray discs, and USB disks

Article Reference:

www.techopedia.com/definition/…

En.wikibooks.org/wiki/Operat…

www.studytonight.com/operating-s…

Blog.csdn.net/liuchuo/art…

Docs.openstack.org/ceilometer/…

www.techopedia.com/definition/…

Simple.wikipedia.org/wiki/Device…

Blog.csdn.net/zhangjg_blo…

www.techopedia.com/definition/…

En.wikipedia.org/wiki/Direct…

En.wikipedia.org/wiki/Bus_ (c…

En.wikipedia.org/wiki/Interr…

En.wikipedia.org/wiki/Busy_w…

En.wikipedia.org/wiki/Contex…

En.wikipedia.org/wiki/Read-o…

www.techopedia.com/definition/…