computer system

Computer hardware, software and network system
open 2 entries with the same name
Collection
zero Useful+1
zero
The computer system receives and Store information , automatic data processing and calculation, and output Result information Machine system. Computer is the extension and expansion of brain power and one of the major achievements of modern science.
Chinese name
computer system
Foreign name
computer system

introduce

Announce
edit
computer system
Computer system consists of hardware (subsystem) and software (subsystem) system composition The former is an organic combination of various physical components based on the principles of electricity, magnetism, light and machinery, and is the entity on which the system works. The latter are various procedures and documents for commanding System wide Work according to the specified requirements.
Since 1946, the first electronic computer Since its inception, computer technology In component devices, hardware System structure , software systems, applications, etc, Modern computer The system is as small as Microcomputer and personal computer , up to Supercomputer Its network, with various forms and characteristics, has been widely used Scientific computing transaction processing And process control, which are increasingly penetrating into all areas of society, have a profound impact on social progress.
Electronic computers fall into two categories: digital and analog. Generally speaking, computers refer to digital computer The data processed by its operation is discrete Digital quantity Represents. and Analog computer The data processed by operation is continuous Analog quantity Represents. Compared with digital computers, analog computers are fast, simple to interface with physical devices, but low in accuracy, difficult to use, poor in stability and reliability, and expensive. Therefore, the simulator has been eliminated, and it is only used in the occasions where the response speed is required to be fast but the accuracy is low. The hybrid computer, which combines the advantages of the two, still has some vitality.

main features

Announce
edit
The computer system is characterized by accurate and fast calculation and judgment, good versatility, easy use and network connection.
① Calculation: almost all complex calculations can be carried out by computer Arithmetic operation and Logical operation To achieve.
② Judgment: the computer has the ability to distinguish different situations and choose different processing, so it can be used in management, control, confrontation, decision-making, reasoning and other fields.
③ Storage: Computers can store huge amounts of information.
④ Accuracy: As long as the word length is enough, the calculation accuracy is theoretically unlimited.
⑤ Fast: The time required for a computer operation is less than nanosecond Count.
⑥ General: The computer is programmable, and different programs can realize different applications.
⑦ Easy to use: rich high-performance software and intelligent man-machine interface , greatly facilitating the use.
networking : Multiple computer systems can transcend geographical boundaries with the help of Communication network , share remote information and software resources.

form

Announce
edit
Figure 1 shows the hierarchical structure The kernel is hardware system Is the actual physical device for information processing. The outermost layer is the person who uses the computer, that is, the user. The interface between human and hardware system is software system , which can be roughly divided into system software Supporting software And application software.

Hardware

hardware system Mainly by a central processor storage I/O control system And various peripheral form. The central processing unit (CPU) is the main component for high-speed computing and processing of information processing speed Up to several hundred million operations per second. Memory for Stored program , data and files, often Memory Memory (capacity up to hundreds of megabytes, even gigabytes) and slow mass External memory (The capacity can reach tens of G or more than hundreds of G). Various input and output external devices are man-machine information converter , by Input-output control system Manage external devices and Main memory (CPU) information switching

Software

The software is divided into system software, support software and application software. The system software is composed of operating system Utilities Compiler Etc. The operating system implements management control The utility program is designed for the convenience of users, such as text editing. The function of the compiler is to use assembly language Or some high-level language The written program is translated into machine executable machine language Procedure. Supporting software There are interface software, tool software Environment database It can support the environment of the machine and provide Software development tools Support software can also be considered as part of system software. Application software is written by users according to their needs Special program , which uses system software and Support software It is the outermost layer of the software system.

classification

Announce
edit
The computer system can press Functions of the system , performance or Architecture Classification.
computer system
① Special purpose machine and general purpose machine: early computers were designed for specific purposes and had special properties. Since the 1960s, the company has begun to manufacture General purpose computer especially Serial computer The emergence of the standard text of various advanced programming language The adoption of and the maturity of the operating system enable one model series to choose different software hardware configuration , which can meet the different needs of users in different industries and further strengthen the universality. but Special purpose The dedicated machine of is still developing, such as continuous Dynamic system The full digital simulator of Dedicated computer Etc.
Supercomputer mainframe , medium-sized computer Minicomputer microcomputer : Computers are developed with large and medium-sized computers as the main line. Appeared in the late 1960s Small computer , appeared in the early 1970s Microcomputer It is widely used because of its lightness, low price, strong function and high reliability. Since the 1970s, there have been more than 50 million operations per second Supercomputer It is specially used to solve major problems in science and technology, national defense and economic development. As the echelon components of computer systems, giant, large, medium, small and micro computers have their own uses and are developing rapidly.
③ Assembly line processor And parallel processor: under the condition of limited speed of components and devices System structure And the organization to achieve high-speed processing capabilities, successfully developed these two processors. They all face ɑ i θb i= c i( i =1,2,3,…, n θ by operator )Such a group of data (also called vector) operations. The pipeline processor is a single instruction data stream (SISD), they use the overlapping principle to process vector elements in a pipeline manner, with high processing speed. parallel processing Machine is Single Instruction Streaming Multiple Data Streaming ( SIMD )It uses the parallel principle to repeatedly set multiple processing components and simultaneously process the elements of the vector in parallel to achieve high speed (see Parallel processing computer system )。 Running water and Parallel technology It can also be combined, such as repeatedly setting multiple pipeline components to work in parallel to achieve higher performance. Research parallel algorithm It is the key to exert the efficiency of such processors. The vector operation can be effectively organized by extending vector statements in high-level programming languages; Or with vector Recognizer automatic recognition source program The vector component in.
An ordinary host (scalar machine) is equipped with an array processor (only a pipeline dedicated machine for high-speed vector operation) to form a main and auxiliary machine system, which can greatly improve the processing capacity of the system Price performance ratio High and widely used.
multiprocessor And Multi computer system Distributed processing System and Computer network Multiprocessors and multiprocessor systems are further development Parallel technology The only way to go is to develop giant and mainframe computers. They are Multiple Instruction Streams Multiple Data Streams (MIMD) system, each machine processes its own Instruction flow (Process), communicate with each other and jointly solve large-scale problems. They have a higher level of parallelism than parallel processors, with great potential and flexibility. Using a large number of inexpensive microcomputers Network composition System, in order to obtain high performance, is a research direction of multiprocessors and multiprocessor systems. Multiprocessor and multiprocessor system requirements Study at a higher level (process) parallel algorithm High level programming language provides the means of concurrent and synchronous processes, and its operating system is also very complex, which must solve the problem of Multiprocess Communication, synchronization, control, etc.
Distributed system It is the development of multi machine system. It is a system of physically distributed multiple independent and interacting single machines to solve user problems cooperatively, and its system software is more complex (see Distributed computer system )。
modern mainframe Almost all of them are multi machine systems with distributed functions, except for high-speed systems a central processor With management input and output Input/output processor (or front-end user machine), management Remote terminal and Network Communications Of Communication control processor , all system maintenance Maintenance and diagnosis machine for diagnosis Database management Database processor, etc. This is a low-level form of distribution system.
Multiple geographically distributed computer systems, via Communication line and Network Protocol , connect with each other, form computer network It is divided into local (local) computer network and remote computer network according to geographical distribution. Computers on the network can share information resources, software and hardware resources with each other. Booking system Information retrieval system Are examples of computer network applications.
⑤ Neumann machine and non Neumann machine: Stored program and Command driven The Neumann machine still dominates today. Its order Execute instruction , which limits the Parallelism , Impact processing speed Further improvement. The non Neumann machine that breaks this principle is Architecture Come up to develop parallelism and improve the system throughput The research work in this field is in progress. Data flow driven Data flow computer And the height of drive by reduction control and drive by demand parallel computer , are promising non Neumann computer systems.

expectation

Announce
edit
The computer system is updated about every 3-5 years, Price performance ratio It is ten times higher and the volume is greatly reduced. vlsi Technology will continue to develop rapidly and have a huge and profound impact on all kinds of computer systems. 32-bit microcomputer The 64 bit microcomputer has also come out, and it is not far away to make 10 million components on a single chip. Devices that are 10 to 100 times faster than semiconductor integrated circuits, such as Gallium arsenide , High Electron mobility Devices Josephson knot The research of optical elements will have important results. increase Assembly density And shortened interconnects Assembly technology It's a new generation of computers key technology one of. Optical fiber communication Will be widely used. Various high-speed intelligence peripheral The advent of compact discs will help Mass storage take on an entirely new. Multiprocessor system Multi computer system Distributed processing The system will be compelling System structure Software hardening (called firmware) is Development trend New non Neumann machine, inference computer knowledge base The computer has been put into practical use. software development We will get rid of backwardness and inefficiency. software engineering It is developing in depth. Software production It is developing towards engineering, formalization, automation, modularization and integration. new high-level language as Logical language The research of functional languages and artificial intelligence will make the human-computer interface simple and natural (can directly see, listen, speak and draw). Database technology Will be greatly developed. computer network It will be widely popularized. With huge processing capacity (such as 10~100 billion operations per second), great knowledge Information base The next generation computer system characterized by high intelligence is being vigorously developed. Computer application Will become increasingly widespread. Computer Aided Design Computer controlled production lines and intelligent robots will greatly improve social labor productivity Office, medical treatment, communication, education and family life will be computerized. Computer has a great impact on people's life and social organization The impact of will be increasingly extensive and profound.

Workflow

Announce
edit
User's use of computer system Arithmetic General process of:
① The system operator creates an account and obtains the right to use it. The account is not only used to identify and protect users' files (programs and data), but also used for the system to automatically count users' use of resources (accounting, payment).
② According to the problem to be solved, study the algorithm, select the appropriate language, and write source program And provide data to be processed and relevant control information
③ Put the result of ② in offline Of special equipment Upper placement floppy disk , create user files (can also be done on the online terminal, directly in Auxiliary memory The fourth step is omitted).
④ With the help of floppy disk The machine inputs the user files on the floppy disk into the computer, processes them as a job, registers them and stores them in the auxiliary memory.
⑤ Is to require compilation. The operating system calls the job into the main memory and calls the compiler of the selected language for compilation and connection (including the subroutine ), generating machine executable Target program , deposit Auxiliary memory
⑥ Computational processing is required. The operating system calls the object program into the main memory, and the a central processor Operation processing, and the results are stored in auxiliary storage
⑦ The operation result is sent to the external device for output by the operating system in the format required by the user.
Computer internal work (④~⑦) is a complex process under the control of operating system. Usually, there are multiple user jobs input at the same time in a computer, and they are uniformly scheduled by the operating system and run alternately. However, this scheduling is transparent to users, and ordinary users do not need to know its internal details.
The user can use one terminal to interactively control ③~⑦ (time-sharing mode); It can also be entrusted operator Complete ③~⑦, of which ④~⑦ are automatically performed by the computer (batch processing mode). Batch mode Degree of automation High, but the user is not intuitive, without intermediate intervention. The time-sharing mode is intuitively controlled by the user, which can intervene and correct errors at any time, but the degree of automation is low. Modern computer The system mostly provides two modes, which are selected by users.

operating system

Announce
edit

brief introduction

The operating system is the system software (or program set) that is convenient for users to manage and control computer software and hardware resources. From the user's point of view, the operating system can be seen as an expansion of computer hardware; from human-computer interaction In terms of mode, the operating system is the interface between the user and the machine; From computer's System structure Look, the operating system is a hierarchy module structure The program set of is an ordered hierarchical method, which is an ordered hierarchical call of unordered modules. The design of the operating system reflects computer technology And management technology. The position of the operating system in the computer:
The operating system is software and system software. Its role in the computer system can be roughly understood from two aspects:
Internally, the operating system manages various resources of the computer system and expands hardware functions;
External, the operating system provides good interface , convenient for users to use the computer. It plays a connecting role in the whole computer system.
The operating system is a large software system Its functions are complex and its system is huge. The results are different from different perspectives. It is just "the peak is formed on the side of the ridge when viewed horizontally". Let's analyze it from the most typical two perspectives.
1. From the programmer's point of view
As mentioned above, if there is no operating system, programmers must fall into complicated hardware implementation details when developing software. Programmers do not want to get involved in this terrible field, and a large amount of energy spent on this repetitive, non creative work also makes it impossible for programmers to focus on more creative programming. What programmers need is a simple, highly abstract device with which they can interact.
Isolating hardware details from programmers is, of course, the operating system.
From this perspective, the role of the operating system is to provide users with an equivalent extended machine, also known as virtual machine , which is easier to program than the underlying hardware.
2. From the user's perspective
From the user's perspective, the operating system is used to manage various parts of a complex system.
The operating system is responsible for orderly control between competing programs CPU , memory and others I/O interface Allocation of equipment.
For example, suppose that three programs running on a computer try to output the calculation results on the same printer at the same time. Then the first few lines may be the output of program 1, the next few lines may be the output of program 2, and then the output of program 3. The end result will be a mess. At this time, the operating system uses the Printout To disk buffer This kind of confusion can be avoided by means of. In a End of program After that, the operating system can send the files temporarily stored on the disk to the printer for output.
From this perspective, the operating system is the resource manager of the system.

Development history

The following combination Development history of computer Let's review the development of the operating system.
1、 First generation computer (1945-1955): Vacuum tube And plug-in board
In the mid-1940s, the United States Harvard University Princeton Institute for Advanced Studies University of Pennsylvania Some of them used tens of thousands of vacuum tubes to build the world's first electronic computer Open the history of computer development. Machines in this period need a team to design, manufacture, program, operate and maintain each machine. Programming use machine language , which is controlled by the hardwire on the plug-in board basic function
At this time, we are at the initial stage of computer development Programming language The operating system is unheard of.
In this period, computers become more and more reliable, and have come out of research institutes and into commercial applications. But computers in this period mainly complete various Scientific computing , needs special operators to maintain, and needs to be programmed for each calculation task.
The second generation computers are mainly used for scientific and engineering computing. use FORTRAN And assembly language Write the program. Later, the prototype of the operating system appeared: FMS (FORTRAN monitoring system) and IBM SYS (IBM's operating system for 7094).
In the early 1960s, computer manufacturers divided into two computer series according to different applications, one for scientific computing and one for commercial applications.
along with Computer application With the deepening of, there is a need for computers to unify the two applications. At this time, IBM tried to solve this problem by introducing System/360.
In line with this plan, IBM organized OS/360 The development of the operating system, and then the complex requirements software engineering The low level of OS/360 development has led to the worst situation in history“ software development The "quagmire" gave birth to the most famous failure treatise --- The Mysterious Man Month. Although this Development plan Failed, but this desire has become the goal of computer manufacturers.
At this time, MIT, Bell Lab( Bell Laboratories )And General Electric Company Decided to develop a "public computer" service system ”----MULTICS, a machine that hopes to support hundreds of time-sharing users at the same time. As a result, the development difficulty of this plan exceeded everyone's expectations, and finally the system ended in failure. However, the idea of MULTICS provided many hints for later operating systems.
At the end of the 1960s, a Bell Lab once participated in the development of MULTICS Computer scientist Ken Thompson, In an unattended PDP-7 A simplified, single user version of MULTICS has been developed on the machine. Later UNIX operating system The birth of.
UNIX operating system dominates Minicomputer , workstations and other markets. It is also one of the most influential operating systems since 2023, and Linux It is also a derivative of UNIX system. The next lecture will introduce the development history of UNIX.
With the continuous updating and development of computer technology, computers have magically entered people's lives, and can be powerful at a low price Computing power 's computer.
When price is no longer the threshold to block the popularity of computers, it is very important to reduce the ease of use of computers. Because of its own characteristics, UNIX system is not suitable for running on personal computers. At this time, a new operating system is needed.
At this critical time in history, IBM underestimated the PC market and did not use its greatest strength to compete in this market. At this time, Intel took the opportunity to enter, becoming today's microprocessor The boss of. At the same time, good at seizing the opportunity Microsoft President of the company Bill Gates Entered this field at the right time CP/M Become MS-DOS And become a personal computer operating system The overlord of the field.
Although it is Apple Inc First in GUI, but due to Apple's incompatibility and openness Market strategy , failed to expand the success, at this time Microsoft It also entered the GUI aspect at the right time, and once again dominated by the WINDOWS system.

constitute

Generally speaking, the operating system consists of the following parts:
The process scheduling subsystem determines which process uses CPU To schedule and manage processes.
(2) Interprocess communication Subsystem:
Responsible for communication between processes.
(3) Memory Management subsystem
Responsible for computer management Memory
(4) Equipment management subsystem:
Responsible for managing various computer peripherals , mainly by equipment Driver Composition.
(5) File subsystem
Be responsible for managing various files and directories on the disk.
(6) Network subsystem
Be responsible for dealing with various things related to the network.

Structural design

There are many implementation methods and design ideas for the operating system, and only the most Representativeness Make a simple description of the three.
1、 Integrated system
Monolithic System structure Design:
This is the most commonly used organization method, which is often called“ Chowder ”In other words, the integrated system structure is "no structure".
such Structure In order to construct the final target operating system program, developers first compile some independent procedures or files containing procedures, and then link them into a separate Target program
computer system
Linux The operating system is integrated System structure Design. But on this basis, some methods such as dynamic module loading are added to improve the overall flexibility and make up for the lack of integrated system structure design.
2、 Hierarchical system
Hierarchical system structure design:
In this way, the system is strictly layered, making the whole system hierarchical, rigidly stratified This kind of system has a strong academic flavor. In fact, there are few operating systems designed completely according to this structure, and there is no widespread application.
It can be said that the design of the operating system since 2023 is to seek a balance between the overall system architecture and the hierarchical system architecture.
III Microkernel system
Microkernel System structure Design:
Microkernel The system structure design is a new kind of design since 2023 Design concept , the most representative operating systems are Mach and QNX
Microkernel system, as its name implies, is system kernel Very small. For example, the microkernel of QNX is only responsible for: inter process communication, low-level Network Communications , process scheduling, first level Interrupt processing

Horizontal comparison

There have been many operating systems in the history of computers, and then many have been eliminated without mercy, leaving only some that have experienced the test of the market:
(1) MSDOS: The earliest operating system on Intel x86 series PCs, Microsoft products, once dominated this field. Since 2023, it has gradually been replaced by its own brother WINDOWS series, which is rare except for some low-end computers.
(2) Windows: Microsoft products, from Windows 1.0 It has developed since 2023 based on Intel x86 The main operating system on PC series is also obviously personal computer The operating system with the largest installed capacity. Desktop oriented and personal user oriented.
(3) Mac OS Apple Inc All of them have friendly interface and excellent performance, but their development is limited because they can only run on Apple's own computers. But because Apple Computer distinctive market positioning , still alive and well.
(4)linux: Linux It is the name of a computer operating system and its kernel. It is also free software and Open Source The most famous example in development.
Strictly speaking, the word Linux only means Linux kernel In fact, people are used to using Linux to describe the entire Linux based kernel, and GNU The operating system (also known as GNU/Linux )。 Linux software based on these components is called Linux distribution. Generally speaking, a Linux distribution suite contains a lot of software, such as Software development tools , database, web server (for example Apache ), X Window Desktop environment (e.g GNOME and KDE ), office suite, etc.
(1) UNIX series: UNIX has a long history and is a truly robust, practical and powerful operating system. However, many manufacturers have developed UNIX versions with their own characteristics based on it, which affects the whole. In foreign countries, UNIX system is unique and widely used in scientific research, schools, finance and other key fields. However, due to the backward computer development in China, the application level of UNIX system lags behind that of foreign countries.
(2) Windows NT Series: Microsoft products, which use Windows friendly user interface With the advantage of Server operating system Market. But its overall performance, efficiency and stability are somewhat different from UNIX, so it is mainly used in the SME market.
(3) Novell Netware series: Novell products, which are famous for being extremely suitable for small and medium-sized networks Market share It is extremely high, and its product features are distinctive. It is still an evergreen tree in server system software.
(4) LINUX Series: Linux It is a kind of freedom and Open source Unix like operating system. There are many different Linux, but they all use the Linux kernel. Linux can be installed in various Computer hardware equipment From your phone tablet PC , Router and Video games Console , to Desktop computer mainframe and Supercomputer Linux is a leading operating system. The 10 fastest supercomputers in the world run Linux operating system. Strictly speaking, the word Linux itself only refers to the Linux kernel, but in fact, people have been accustomed to using Linux to describe the entire operating system based on Linux kernel, and using various tools and databases of GNU engineering. Linux gets its name from computer amateur Linus Torvalds.

Flynn classification

Announce
edit
Flynn classification is based on Instruction flow data stream And Polyploidy classified. There are four categories:
SISD -- The instruction unit processes only one instruction and controls only one operation unit. Such as general serial single processor.
SIMD ―― By single command unit Simultaneous control Multiple repeatedly set processing unit , different when executing the same command
Operation of data. as Array processor
MISD -- Multiple instruction units operate on each processing stage of the same data. This kind of machine is rare.
MIMD -- Multiple independent or relatively independent processor Execute respective programs, jobs or processes respectively. For example, many
Processor. [1]