Windows operating system. general characteristics


Year after year, the structure and capabilities of operating systems evolve. Recently, new operating systems and new versions of existing operating systems have included some structural elements that have brought major changes to the nature of these systems. Modern operating systems meet the demands of constantly evolving hardware and software. They are capable of managing multiprocessor systems that run faster than conventional machines, high-speed networking devices, and a wide variety of storage devices, the number of which is constantly growing. Applications that have influenced the design of operating systems include multimedia applications, Internet access tools, and the client/server model.
The steady increase in requirements for operating systems leads not only to improvements in their architecture, but also to the emergence of new ways of organizing them. A wide variety of approaches and building blocks have been tried in experimental and commercial operating systems, most of which can be grouped into the following categories.

  • Microkernel architecture.
  • Multithreading.
  • Symmetric multiprocessing.
  • Distributed operating systems.
  • Object-oriented design.

A distinctive feature of most operating systems today is a large, monolithic kernel. The operating system kernel provides most of its capabilities, including scheduling, file system management, networking, device drivers, memory management, and many others. Typically, a monolithic kernel is implemented as a single process, all of whose elements share the same address space. In a microkernel architecture, the kernel is assigned only a few of the most important functions, which include working with address spaces, interprocess communication (IPC), and basic scheduling. Other operating system services are provided by processes that are sometimes called servers. These processes run in user mode and the microkernel treats them in the same way as other applications.

This approach allows you to divide the task of developing an operating system into kernel development and server development. Servers can be configured to meet the requirements of specific applications or environments.

The inclusion of a microkernel in the system structure simplifies the implementation of the system, ensures its flexibility, and also fits well into a distributed environment. In fact, the microkernel interacts with the local and remote server using the same scheme, which simplifies the construction of distributed systems.

Multithreading is a technology in which the process running an application is divided into several simultaneously executing threads. Below are the main differences between a thread and a process.

Flow. A dispatchable unit of work that includes a processor context (which includes the contents of the program counter and stack pointer), as well as its own stack area (for organizing subroutine calls and storing local data). Thread commands are executed sequentially; a thread can be interrupted when the processor switches to process another thread.

Process. A collection of one or more threads, and the system resources associated with those threads (such as memory space containing code and data, open files, various devices). This concept is very similar to the concept of a running program. By splitting an application into multiple threads, the programmer takes full advantage of the application's modularity and the ability to control application-related timing events.
Multithreading is very useful for applications that perform multiple independent tasks that do not require sequential execution. An example of such an application is a database server that simultaneously receives and processes multiple client requests. If multiple threads are being processed within the same process, then switching between different threads requires less CPU overhead than switching between different processes. Threads are also useful in structuring processes that are part of the operating system kernel, as described in later chapters.
Until recently, all single-user personal computers and workstations contained a single general-purpose virtual microprocessor. As a result of ever-increasing performance requirements and decreasing costs of microprocessors, manufacturers have moved toward producing computers with multiple processors.

To increase efficiency and reliability, symmetric multiprocessing (SMP) technology is used.

This term refers to the architecture of a computer's hardware, as well as the way the operating system behaves according to that architectural feature. Symmetric multiprocessing can be defined as a self-contained computer system with the following characteristics.

  1. The system has several processors.
  2. These processors, interconnected by a communications bus or some other circuit, share the same main memory and the same input/output devices.
  3. All processors can perform the same functions (hence the name symmetrical processing).

An operating system running on a symmetric multiprocessing system distributes processes or threads across all processors. Multiprocessor systems have several potential advantages over single-processor systems, including the following.

Performance. If a job to be performed by a computer can be arranged so that parts of the job are executed in parallel, this will result in improved performance compared to a single-processor system with the same type of processor. The position formulated above is illustrated in Fig. 2.12. In multitasking mode, only one process can be running at a time, while other processes are forced to wait their turn. In a multiprocessor system, multiple processes can be running simultaneously, each running on a separate processor.

Reliability. In symmetric multiprocessing, the failure of one processor will not stop the machine because all processors can perform the same functions. After such a failure, the system will continue to operate, although its performance will decrease slightly.

Extension. By adding additional processors to the system, the user can improve its performance.

Scalability. Manufacturers can offer their products in various configurations that vary in price and performance, designed to work with different numbers of processors.
It is important to note that the benefits listed above are potential rather than guaranteed. To properly realize the potential of multiprocessor computing systems, the operating system must provide an adequate set of tools and capabilities.

Blocked
- Performed
Rice. 2.12. Multitasking and multiprocessing

You can often see multithreading and multiprocessing discussed together, but the two concepts are independent. Multithreading is a useful concept for structuring application and kernel processes, even on a single processor machine. On the other hand, a multiprocessor system can have advantages over a single-processor system, even if the processes are not threaded, because it is possible to run multiple processes at the same time. However, both of these possibilities are well consistent with each other, and their combined use can give a noticeable effect.

An attractive feature of multiprocessor systems is that the presence of multiple processors is transparent to the user - the operating system is responsible for distributing threads between processors and synchronizing different processes. This book examines the scheduling and synchronization mechanisms that are used to ensure that all processes and processors are visible to the user as a single system. Another higher-level task is to represent a cluster of several individual computers as a single system. In this case, we are dealing with a set of computers, each of which has its own main and secondary memory and its own input/output modules. A distributed operating system creates the appearance of a single primary and secondary memory space, as well as a single file system. Although the popularity of clusters is steadily increasing and more and more cluster products are appearing on the market, modern distributed operating systems still lag behind single- and multiprocessor systems in development. You will become acquainted with such systems in the sixth part of the book.

One of the latest innovations in operating systems is the use of object-oriented technologies. Object-oriented design helps bring order to the process of adding additional modules to the main small core. At the operating system level, an object-oriented structure allows programmers to customize the operating system without compromising its integrity. In addition, this approach facilitates the development of distributed tools and full-fledged distributed operating systems.

There are several types of operating systems: DOS, Windows, UNIX, Macintosh OS, Linux. Other modern operating systems, such as Linux, UNIX, OS/2, have their own advantages and disadvantages. Linux provides more advanced security than Windows and has a more sophisticated interface; UNIX is used where high system reliability is required. The big disadvantage of OS/2 and UNIX is the rather meager selection of software tools, and here Windows wins over other operating systems.

The most common operating system is Windows. There are several versions of Windows: Windows-3.1, Windows-95, Windows-98, Windows-2000, Windows NT. All of them are close to each other in content. Therefore, we will consider such operating systems as DOS and Windows-95.

MS-DOS is one of the first operating systems and one of the most famous. The popularity of this operating system peaked in the 90s; now this operating system is rarely used. The most popular operating systems in the world at the moment are Microsoft operating systems. Their share is about 90% among all operating systems. The most stable systems of this company are based on NT technology.

Operating system DOS

The DOS operating system consists of the following parts:

1) Basic input/output system (BIOS), located in the read-only memory (read-only memory, ROM) of the computer. This part of the operating system is "built into" the computer. Its purpose is to perform the most simple and universal operating system services related to I/O. The Basic I/O system also contains a computer performance test that checks the operation of the computer's memory and devices when the computer's power is turned on. In addition, the basic input/output system contains a program that calls the operating system loader.

2) The operating system loader is a very short program located in the first sector of every DOS floppy disk. The function of this program is to read two more operating system modules into memory, which complete the DOS boot process.

3) The DOS command processor processes commands entered by the user. The command processor is in a disk file! COMMAND.COM on the disk from which the operating system boots. Some user commands, such as Type, Dir or Cop, are executed by the command processor itself. Such commands are called internal. To execute other (external) user commands, the command processor searches the disks for a program with the appropriate name and, if it finds it, loads it into memory and transfers control to it. At the end of the program, the command processor deletes the program from memory and displays a message indicating that it is ready to execute commands (DOS prompt).

External DOS commands are programs that come with the operating system as separate files. These programs perform maintenance actions, such as formatting floppy disks, checking disks, etc.

Device drivers are special programs that complement the DOS input/output system and provide support for new or non-standard use of existing devices. For example, with the help of drivers it is possible to work with an “electronic disk”, i.e. a piece of computer memory that can be manipulated in the same way as a disk. Drivers are loaded into the computer's memory when the operating system boots, and their names are specified in a special CONFIG.SYS file. This scheme makes it easy to add new devices and allows you to do this without affecting the DOS system files.

Window-95 evolved from a graphical add-on for DOS into a full-fledged operating system. At least that's what its developers said. In reality, everything was more complicated: Windows 95 still used good old DOS as its basis. Slightly modernized, of course, and not declared as a separate product. However, most consumers were happy with this option. After all, they still had the opportunity to work in the usual DOS mode without loading the Windows graphical shell, and, therefore, not to part with the usual DOS programs.

Also, the Window-95 operating system became 32-bit. All previous versions of DOS and Windows were 16-bit and, therefore, could not fully use the capabilities of even the 386 family of processors, much less the new Pentium processors. Of course, this advantage also contained some inconveniences. Especially for Windows, users had to replace all their Windows programs with new 32-bit versions. However, in practice the transition turned out to be relatively easy. Already throughout the year, new versions of all popular software products have been released. But the old 16-bit versions could work with the new OS without any problems.

Computer science - operating system (OS) - Main OS tasks - User Interface - Characteristics, shells

An operating system (OS) is a set of software that provides management of computer hardware resources, support for program execution, and interaction of programs with hardware, other programs and the user.

The OS is the basic software without which the computer cannot operate. Therefore, any type of computer is equipped with an OS. There are usually several types of operating systems aimed at the same type of computer. The main part of the OS kernel is loaded into RAM when the computer is turned on and remains there constantly throughout the entire period of operation of the computer (i.e., resident).

Application programs can only run in an operating system environment. For each type of OS, its own set of application programs (applications) is developed.

The situation when a program developed for one operating system can be executed directly in the environment of another OS is rare. More often than not, software products targeted at a specific OS cannot function in the environment of another OS (software incompatibility).

The main purpose of the operating system is the connection between software products and the computer hardware itself. The operating system makes programs to a certain extent independent of the specific modification of the machine and the equipment installed on it. It also allows you to "tell" the user what he wants from the computer.

The operating system has certain conventions and restrictions in place to enable it to "understand" the user's wishes. Dialogue with the operating system is somewhat similar to a conversation with a stupid, slow-witted, but efficient servant. She understands you only when you tell her where everything is and what needs to be done with it, and if you say this inaccurately, then she may do something completely different or refuse to do anything at all.

Main OS tasks

1. support for program operation; ensuring their interaction with the hardware and with each other;

2. distribution of resources (processor time, RAM, disk space, etc.); organization of a file system (data storage system on external storage media); accounting for resource use, video system management;

3. handling error situations; data protection;

4. supporting the ability for the user to control the machine using special commands (processing command language in a procedural environment) or influencing certain objects (buttons, etc. in an object-oriented environment);

5. Network support.

User Interface

In addition to managing resources and supporting the operation of programs, the OS provides the user with the ability to control the computer in dialog mode. This happens through the user interface.
User interface is a component of a software product that provides interactive interaction between the program and the user.

The simplest type of IP is the command line interface. It involves controlling a computer by entering commands from the keyboard.

A striking example is the command line in MS-DOS:

C:\USERS\DIPLOM\> copy head.htm C:\USERS\BAKALAVR

1 file copied

A more convenient type of IP is a text window interface. It does not require typing commands on the keyboard, but reduces control to pressing individual keys or mouse buttons when selecting control actions in menus and dialog boxes.

An example is the Borland Pascal tool shell:

The most modern is the graphical window interface, which combines developed dialog tools of the window interface (menu systems, dialog boxes, toolbars, icons, etc.) with the greater visual capabilities of the graphic mode.

An example would be the My Computer folder window:

----

OS characteristics

1. bit depth (for PCs 8-bit, 16-bit, 32-bit, 64-bit OS);

2. the number of programs simultaneously executed under OS control (single- and multi-tasking OS).
Multitasking operating systems support the parallel execution of several programs running within the same computer system at one point in time. Multitasking can be corporate or displacing.
With enterprise multitasking, applications share the processor, periodically passing it on to each other. If some application refuses to release the processor, the system will not be able to do anything about it.
If preemptive multitasking is used, the operating system fully controls all applications and distributes processor time between them, thereby greatly reducing the likelihood of the system freezing due to program errors.
Single-tasking operating systems support the execution mode of only one program at a time;

3. Multithreading is a technology that allows an application to properly multitask its processes. A process is any task or activity initiated by a program. One program can run multiple processes simultaneously;

4. type of user interface: command line interface, text window interface, graphical window user interface (ICS, TYPE, GUI);

5. hardware resource requirements;

6. productivity;

7. reliability (stability in operation, data security from unauthorized access);

8. provision of application programs;

9. availability of network capabilities (network, local OS);
Network operating systems are designed to manage the resources of computers connected to a network for the purpose of sharing data, and provide powerful means of restricting access to data while ensuring their integrity and safety, as well as many service capabilities for using network resources;

10. number of supported processors: single-processor, multi-processor;
Multiprocessor operating systems, unlike single-processor operating systems, support the use of several processors to solve one task;

11. openness of the operating system means that OS components are available in source code for any user.

12. method of using RAM;
There are two ways to work with memory: linear address - the OS works with all system memory as a single continuous space; segmented - the OS works with a small amount of RAM available without special means.

The most common computer operating systems

The main characteristics of operating systems are:

The first representative of this family is the system MS-DOS(Microsoft Disk Operating System) was released in 1981 in connection with the advent of the IBM PC.
Operating systems of the DOS family are single-tasking 16-bit and have the following features:

Command Line Interface
Modular structure, simplifying the transfer of the system to other types of computers
Small amount of RAM available without special means (640 KB)
Low hardware requirements, large volume of application programs.

A significant disadvantage of operating systems of the DOS family is the lack of protection against unauthorized access to PC and OS resources, as well as low reliability and lack of network capabilities. MS DOS is currently included in Windows 95.

INTRODUCTION TO MS-DOS

The MS-DOS operating system itself (and any other operating system too) consists of several parts:

The operating system loader is a small program stored in the first sector of any system floppy disk (a floppy disk with the operating system recorded on it) or hard drive, which loads two system files io.sys and msdos.sys into memory. It is the operating system bootloader that transfers control to the BIOS when the machine starts up.

The io.sys and msdos.sys files are constantly located in the computer's memory during operation: io.sys supplements the basic input/output system depending on the needs of a given version of the operating system, and msdos.sys implements all the standard functions of this version. In addition, msdos.sys loads the command processor into memory.

The command processor (file command.com) handles the system's interaction with the user. It itself executes part of the operating system commands (these commands are called internal), and when calling external commands or executing other programs, it transfers control to them, and upon completion of their work, it again takes control and unloads the executed program from memory.
External operating system commands are separate programs that perform some service functions.

Device drivers are special resident programs, their main purpose is to expand the capabilities of individual computer devices (for example, memory), connect additional equipment (say, a mouse) and ensure the normal operation of non-standard devices.

Let us now consider the principles of organizing information storage in a computer.

Operating system shells

An OS shell is an add-on over the operating system that significantly facilitates the user’s work and provides him with a number of additional services.

Operating system shells provide:

* creating, renaming, copying, forwarding, deleting and quickly searching for a file in the current directory of the disk or on all disks of the computer;
* viewing, creating and comparing catalogs;
* viewing, creating and editing text files;
* archiving, updating and unarchiving archived files and viewing archives;
* directory synchronization, file splitting and merging;
* support for communication between two computers via serial or parallel ports;
* formatting and copying floppy disks, changing the floppy disk label and volume label for hard disks, as well as cleaning disks from unnecessary files;
* launching programs.

The most popular among users is the Norton Commander (NC) shell. This software product allows you to see files and directories in two constantly displayed panels of several types and conveniently manipulate files using function keys and the mouse.

The DOS Navigator shell completely copies the original NC idea, but has additional functions. It supports working with a large number of archivers, allows you to highlight files of various types in color, and has more convenient means for computer-to-computer communication via a modem.

Graphical shells for Windows - Dash Board for Windows, Dash Board for Windows 95, DeskBar 95 for Windows 95 - allow the user to quickly create menus for launching programs and calling documents, as well as control the use of system resources.

Shez and RAR shells are designed to manage compression (archiving) and decompression of files in the MS-DOS environment. The WinRAR and WinZip shells are designed to control compression (archiving) and decompression of files in a graphical environment. NDOS and Norton Desktop for Windows shells are designed for file management.

Publication date: 10/01/2010 10:34 UTC

Tags: :: :: :: :: :: :.

Depending on the implemented architectural solutions, the characteristics of operating systems are:

· Portability - refers to the ability to work on CISC AND RISC processors.

· Multitasking – using one processor to run multiple applications.

· Multiprocessing - involves the presence of several processors that can simultaneously execute many threads, one for each processor present in the computer.

· Scalability – the ability to automatically take advantage of added processors. So, to speed up the application, the operating system can automatically connect additional identical processors.

· Client-server architecture – involves connecting a single-user general-purpose workstation (client) to a multi-user general-purpose server to distribute the data processing load between them. The object that sends the message is the client, and the object that receives the message and responds to it is the server.

· Extensibility – ensured by an open modular architecture that allows you to add new modules to all levels of the operating system.

· Reliability and fault tolerance - characterize the ability to protect the operating system and applications from destruction.

· Compatibility means continued support for applications developed for MSDOS operating systems such as Windows, OS/2.

· Multi-level security system to protect information and applications from destruction, unauthorized access, and unskilled user actions.

Classification of operating systems

Operating systems can be classified according to various criteria:

· Based on the number of tasks being solved on a computer in parallel OS is divided:

    • single-tasking (for example, MS DOS);
    • multitasking (OS/2, UNIX, Windows, Linux).

Multitasking operating systems provide simultaneous solving of several tasks and manage the distribution of shared resources (processor, RAM, files and external devices).

· By number of simultaneously working users :

    • single-user (for example, MS DOS, Windows 3.x);
    • multi-user (network Unix, Linux, Windows 2000).

The main difference between multi-user systems and single-user systems is the ability to work on a computer network.

· By user interface:

    • command interface (for example, MS DOS);
    • graphical interface (for example, Windows).

· According to the number of bits of the computer address bus, for which the OS is oriented,

    • to 16-bit (MS DOS);
    • 32-bit (Windows 2000) and
    • 64-bit (Windows 2003).

In the software and operating systems sector, the leading positions are occupied by IBM, Microsoft, UNISYS, and Novell.



Operating system MS DOS(Microsoft) appeared in 1981. Today this operating system is installed on the vast majority of personal computers. Since 1996, MS DOS has been distributed as Windows 95 - a 32-bit multitasking and multi-threaded operating system with a graphical interface and advanced network capabilities.

The most traditional comparison of OS is carried out according to the following characteristics of the information processing process:

· memory management (maximum amount of addressable space, types of memory, technical indicators of memory use);

· functionality of auxiliary programs (utilities) as part of the operating system;

· presence of disk compression;

· possibility of archiving files;

· support for multitasking mode;

· network software support;

· availability of high-quality documentation;

· conditions and complexity of the installation process.

Network operating systems- a set of programs that provide processing, transmission and storage of data on the network. The network OS provides users with various types of network services (file management, e-mail, network management processes, etc.) and supports work in subscriber systems. Network operating systems use architecture client-server or peer-to-peer architecture. At first, network operating systems supported only local area networks (LANs), but now these operating systems extend to local area network associations.

Send your good work in the knowledge base is simple. Use the form below

Students, graduate students, young scientists who use the knowledge base in their studies and work will be very grateful to you.

Posted on http://www.allbest.ru/

ROSZHELDOR

Federal State Budgetary Educational Institution

higher professional education

Rostov State Transport University

(FSBEI HPE RGUPS)

Liskinsky College of Railway Transport named after I.V. Kovaleva

(LTZhT - branch of RGUPS)

abstract

by discipline

COMPUTER SCIENCE

Operating systems

Completed by: student of group DK-22

option 18 Oleynikova Victoria

2014

operating system operating program

Introduction

1.3 Overview of file systems

Conclusion

Introduction

Among all the system programs that computer users have to deal with, operating systems occupy a special place.

An operating system is a program that starts immediately. Among all the system programs that computer users have to deal with, operating systems occupy a special place.

The operating system (OS) controls the computer, runs programs, provides data protection, and performs various service functions at the request of the user and programs. Each program uses the services of the OS, and therefore can only run under the control of the OS that provides the services for it. Thus, the choice of OS is very important, as it determines what programs you can run on your computer. The choice of OS also determines the performance of your work, the degree of data protection, the necessary hardware, etc. However, the choice of operating system also depends on the technical characteristics (configuration) of the computer. The more modern the operating system, the more it not only provides more features and is more visual, but also the more requirements it places on the computer (processor clock speed, RAM and disk memory, the presence and capacity of additional cards and devices).

The main reason for the need for an OS is that the elementary operations for working with computer devices and managing its resources are very low-level operations, so the actions that are necessary for the user and application programs consist of several hundred or thousands of such elementary operations.

The operating system hides these complex and unnecessary details from the user and provides him with a convenient interface to work with. It performs various auxiliary actions, such as copying and printing files.

The OS loads all programs into RAM, transfers control to them at the beginning of their work, performs various actions at the request of executing programs, and frees RAM occupied by programs when they complete.

1. The concept of an operating system

The operating system is a complex of system and utility software. On the one hand, it relies on the basic computer software included in its BIOS system (basic input/output system), on the other hand, it itself is the support for higher-level software - application and most service applications. Operating system applications are usually called programs designed to work under the control of this system.

An operating system is a program that loads when you turn on your computer. It carries out a dialogue with the user, manages the computer, its resources (RAM, disk space, etc.), and launches other (application) programs for execution. The operating system provides the user and application programs with a convenient way to communicate (interface) with computer devices.

The operating system has several main functions:

1. The graphical interface is a convenient shell with which the user works.

2. Multitasking - includes the ability to simultaneously or alternately work with several applications at once, exchange data between applications, as well as the ability to share software, hardware, network and other computer system resources with several applications.

3. The kernel (command interpreter) is a “translator” from a program language to a machine code language.

4. Drivers are specialized programs for controlling various devices that are part of a computer.

5. File system - designed to store data on disks and provide access to them. Data about where on the disk a particular file is recorded is stored in the system area of ​​the disk in special file allocation tables (FAT tables).

6. Bit size - currently there are: 16-bit operating systems (Dos, Windows 3.1, Windows 3.11), 32-bit operating systems (Windows98, Windows 2000, WindowsMe), 64-bit operating systems (Windows XP, WindowsVista).

In addition to the main (basic) functions, operating systems can provide various additional functions. The specific choice of operating system is determined by the set of functions provided and the specific requirements for the workplace. Other operating system features may include the following:

· Ability to support the functioning of a local computer network without special software;

· Providing access to basic Internet services using tools integrated into the operating system;

· The ability to create an Internet server using system tools, its maintenance and management, including remote control via a remote connection;

· Availability of means to protect data from unauthorized access, viewing and modification;

· Possibility of designing the working environment of the operating system, including means related to multimedia;

· The ability to ensure comfortable alternate work of different users on one personal computer while maintaining the personal settings of the working environment of each of them;

· Possibility of automatic execution of computer and operating system maintenance operations according to a given schedule or under the control of a remote server;

· Ability to work with a computer for persons with physical disabilities associated with the organs of vision, hearing and others.

Figure 1 Integrated tool in Windows operating systems for Internet access

1.1 Purpose and classification of operating systems

OC purpose:

Organization of the computing process in a computer system;

Rational distribution of computing resources between individual tasks;

Providing users with numerous service tools that facilitate the process of programming and debugging tasks.

The operating system plays the role of a kind of interface (Interface is a set of hardware and software necessary for connecting peripheral devices to a personal electronic computer (PC)) between the user and the computer, i.e. The OS provides the user with a virtual aircraft. This means that the OS largely forms the user’s idea of ​​the capabilities of the aircraft, the ease of working with it, and its throughput. Different operating systems on the same hardware can provide the user with different opportunities for organizing the computing process or automated data processing. In computer software, the operating system occupies a central position because it plans and controls the entire computing process. Any software component must run under the OS.

This operating system should:

Be generally accepted and used as a standard system on many computers;

Work with all computer devices, including those released a long time ago;

Ensure that a wide variety of programs, written by different people and at different times, run;

Provide tools for checking, configuring, and maintaining a computer system.

Modern operating systems are multitasking, that is, the user can run several applications simultaneously, observing the results of each of them. This is possible thanks to the design of the OS and the functionality of modern processors - it's not for nothing that operating systems are written for the processor, and not vice versa. A modern processor is not a single-core, but a dual-core and even quad-core solution, which increases its performance many times over. The operating system takes advantage of this, optimally distributing processor resources among all running processes.

The main characteristics of an operating system are the stability of its operation and resistance to various threats - external (viruses) and internal (hardware failures and conflicts).

OS classification:

Depending on the processor control algorithm, operating systems are divided into:

Single-tasking and multi-tasking

Single and multi-user

Single-processor and multiprocessor systems

Local and network.

Based on the number of simultaneously performed tasks, operating systems are divided into two classes:

Single-tasking (MS DOS)

Multitasking (OS/2, Unix, Windows)

Single-tasking systems use peripheral device management tools, file management tools, and means of communicating with users. Multitasking OSes use all the features found in single-tasking OSes and also manage the division of shared resources: processor, RAM, files, and external devices.

Depending on the areas of use, multitasking operating systems are divided into three types:

Batch Processing Systems (OS EC)

Time-sharing systems (Unix, Linux, Windows)

Real Time Systems (RT11)

Figure 2 Screenshot of a Unix desktop

1.2 Composition of the operating system and purpose of components

The most important advantage of most operating systems is modularity. This property allows you to combine certain logically related groups of functions in each module. If there is a need to replace or expand such a group of functions, this can be done by replacing or modifying only one module, rather than the entire system. Most OS consists of the following main modules: basic input/output system (BIOS - BasicInputOutputSystem); operating system loader (BootRecord); OS kernel; device drivers; command processor; external commands (files). The basic input/output system (BIOS) is a set of firmware that implements basic low-level (elementary) input/output operations. They are stored in the computer's ROM and written there when the motherboard is manufactured.

This system is essentially “built-in” into the computer and is both its hardware and part of the operating system. The first function of the BIOS is to automatically test the main components of the computer when it is turned on. If an error is detected, a corresponding message is displayed on the screen and/or an audible signal is given. Next, the BIOS calls the initial boot block of the operating system located on the disk (this operation is performed immediately after testing is completed). Having loaded this block into RAM, the BIOS transfers control to it, and it, in turn, loads other OS modules. Another important BIOS function is interrupt servicing. When certain events occur (pressing a key on the keyboard, clicking a mouse, an error in a program, etc.), one of the standard BIOS routines is called to handle the situation that has arisen. The operating system loader is a short program located in the first sector of any boot disk (floppy disk or operating system disk). The function of this program is to read the main OS disk files into memory and transfer further computer control to them. The OS kernel implements basic services, is loaded into RAM and remains there permanently.

1.3 Overview of file systems

File system FAT

FAT is the simplest file system supported by Windows NT. The basis of the FAT file system is the file allocation table, which is located at the very beginning of the volume. In case of damage, two copies of this table are stored on disk. In addition, the file allocation table and root directory must be stored in a specific location on disk (to correctly determine where the boot files are located).

A disk formatted with the FAT file system is divided into clusters, the size of which depends on the size of the volume. Simultaneously with the creation of the file, an entry is created in the directory and the number of the first cluster containing the data is set. Such an entry in the file allocation table signals that this is the last cluster of the file, or points to the next cluster.

Updating the file allocation table is important and time consuming. If the file allocation table is not updated regularly, it may result in data loss. The duration of the operation is explained by the need to move the read heads to the logical zero track of the disk each time the FAT table is updated.

The FAT directory has no specific structure and files are written to the first available free space on the disk. Additionally, the FAT file system only supports four file attributes: System, Hidden, Read-Only, and Archive.

File system HPFS

The HPFS file system was first used for the OS/2 1.2 operating system to provide access to the large disk drives that were appearing on the market at the time. In addition, there is a need to expand the existing naming system, improve organization and security to meet the growing needs of the network server market. The HPFS file system supports the FAT directory structure and adds sorting of files by name. The file name can contain up to 254 double-byte characters. A file consists of "data" and special attributes, which creates additional opportunities to support other types of file names and improve security. In addition, the smallest block for storing data is now equal to the size of the physical sector (512 bytes), which reduces wastage of disk space.

HPFS file system directory entries contain more information than FAT. Along with file attributes, information about creation and modification, as well as the date and time of access, is stored here. HPFS file system directory entries point to FNODE rather than to the first cluster of the file. FNODE may contain file data, pointers to file data, or other structures pointing to file data.

HPFS tries to place file data in contiguous sectors whenever possible. This results in increased speed of sequential file processing.

HPFS divides the disk into blocks of 8 MB each and always tries to write a file within the same block. For each block, 2 KB is reserved for the allocation table, which contains information about the written and free sectors within the block. Blocking leads to improved performance because the disk head must return not to the logical beginning of the disk (usually cylinder zero) but to the allocation table of the nearest block to determine where to save the file.

File system NTFS

From a user's perspective, the NTFS file system organizes files into directories and sorts them in the same way as HPFS. However, unlike FAT and HPFS, there are no special objects on the disk and there is no dependence on the features of the installed hardware (for example, a 512-byte sector). In addition, there are no special data stores on the disk (FAT tables and HPFS superblocks).

The purpose of the NTFS file system is the following.

Ensuring reliability is essential for high-performance systems and file servers.

Providing the platform with additional functionality.

Support for POSIX requirements.

Eliminates limitations specific to FAT and HPFS file systems.

Figure 3 FAT file system structure

2. Characteristics of modern operating systems

Year after year, the structure and capabilities of operating systems evolve. Recently, new operating systems and new versions of existing operating systems have included some structural elements that have brought major changes to the nature of these systems. Modern operating systems meet the demands of constantly evolving hardware and software. They are capable of managing multiprocessor systems that run faster than conventional machines, high-speed networking devices, and a wide variety of storage devices, the number of which is constantly growing. Applications that have influenced the design of operating systems include multimedia applications, Internet access tools, and the client/server model.

The steady increase in requirements for operating systems leads not only to improvements in their architecture, but also to the emergence of new ways of organizing them. A wide variety of approaches and building blocks have been tried in experimental and commercial operating systems, most of which can be grouped into the following categories.

Microkernel architecture.

Multithreading.

Symmetric multiprocessing.

Distributed operating systems.

Object-oriented design.

A distinctive feature of most operating systems today is a large, monolithic kernel. The operating system kernel provides most of its capabilities, including scheduling, file system management, networking, device drivers, memory management, and many others. Typically, a monolithic kernel is implemented as a single process, all of whose elements share the same address space. In a microkernel architecture, the kernel is assigned only a few of the most important functions, which include working with address spaces, interprocess communication (IPC), and basic scheduling. Other operating system services are provided by processes that are sometimes called servers. These processes run in user mode and the microkernel treats them in the same way as other applications.

This approach allows you to divide the task of developing an operating system into kernel development and server development. Servers can be configured to meet the requirements of specific applications or environments.

The inclusion of a microkernel in the system structure simplifies the implementation of the system, ensures its flexibility, and also fits well into a distributed environment.

Multithreading is a technology in which the process running an application is divided into several simultaneously executing threads. Below are the main differences between a thread and a process.

Flow: A dispatchable unit of work that includes a processor context (which includes the contents of the program counter and stack pointer), as well as its own stack area (for organizing subroutine calls and storing local data). Thread commands are executed sequentially; a thread can be interrupted when the processor switches to process another thread.

Process: A collection of one or more threads, and the system resources associated with those threads (such as memory space containing code and data, open files, various devices). This concept is very similar to the concept of a running program. By splitting an application into multiple threads, the programmer takes full advantage of the application's modularity and the ability to control application-related timing events.

Multithreading is very useful for applications that perform multiple independent tasks that do not require sequential execution. An example of such an application is a database server that simultaneously receives and processes multiple client requests. If multiple threads are being processed within the same process, then switching between different threads requires less CPU overhead than switching between different processes. Threads are also useful in structuring processes that are part of the operating system kernel, as described in later chapters.

Until recently, all single-user personal computers and workstations contained a single general-purpose virtual microprocessor. As a result of ever-increasing performance requirements and decreasing costs of microprocessors, manufacturers have moved toward producing computers with multiple processors.

To improve efficiency and reliability, symmetric multiprocessing (SMP) technology is used.

This term refers to the architecture of a computer's hardware, as well as the way the operating system behaves according to that architectural feature. Symmetric multiprocessing can be defined as a self-contained computer system with the following characteristics.

The system has several processors.

These processors, interconnected by a communications bus or some other circuit, share the same main memory and the same input/output devices.

All processors can perform the same functions (hence the name symmetric processing).

An operating system running on a symmetric multiprocessing system distributes processes or threads across all processors. Multiprocessor systems have several potential advantages over single-processor systems, including the following.

Performance. If a job to be performed by a computer can be arranged so that parts of the job are executed in parallel, this will result in improved performance compared to a single-processor system with the same type of processor. The position formulated above is illustrated in Fig. 2.12. In multitasking mode, only one process can be running at a time, while other processes are forced to wait their turn. In a multiprocessor system, multiple processes can be running simultaneously, each running on a separate processor.

Reliability. In symmetric multiprocessing, the failure of one processor will not stop the machine because all processors can perform the same functions. After such a failure, the system will continue to operate, although its performance will decrease slightly.

Extension. By adding additional processors to the system, the user can improve its performance.

Scalability. Manufacturers can offer their products in various configurations that vary in price and performance, designed to work with different numbers of processors.

It is important to note that the benefits listed above are potential rather than guaranteed. To properly realize the potential of multiprocessor computing systems, the operating system must provide an adequate set of tools and capabilities.

Figure 4 Multitasking and multiprocessing

You can often see multithreading and multiprocessing discussed together, but the two concepts are independent. Multithreading is a useful concept for structuring application and kernel processes, even on a single processor machine. On the other hand, a multiprocessor system can have advantages over a single-processor system, even if the processes are not threaded, because it is possible to run multiple processes at the same time. However, both of these possibilities are well consistent with each other, and their combined use can give a noticeable effect.

An attractive feature of multiprocessor systems is that the presence of multiple processors is transparent to the user - the operating system is responsible for distributing threads between processors and synchronizing different processes. This book examines the scheduling and synchronization mechanisms that are used to ensure that all processes and processors are visible to the user as a single system. Another higher-level task is to represent a cluster of several individual computers as a single system. In this case, we are dealing with a set of computers, each of which has its own main and secondary memory and its own input/output modules. A distributed operating system creates the appearance of a single primary and secondary memory space, as well as a single file system. Although the popularity of clusters is steadily increasing and more cluster products are appearing on the market, modern distributed operating systems still lag behind the development of single- and multi-processor systems. You will become acquainted with such systems in the sixth part of the book.

One of the latest innovations in operating systems is the use of object-oriented technologies. Object-oriented design helps bring order to the process of adding additional modules to the main small core. At the operating system level, an object-oriented structure allows programmers to customize the operating system without compromising its integrity. In addition, this approach facilitates the development of distributed tools and full-fledged distributed operating systems.

Conclusion

Windows is the most common operating system, and for most users it is the most suitable due to its simplicity, good interface, acceptable performance and a huge number of application programs for it.

I had the opportunity to work with Microsoft operating systems from Windows 2000 to Windows 8, in my opinion the most successful is Windows 7, which has more advanced protection than Windowsxp, a more thoughtful interface and many other little things that make this OS more attractive . Of course, the question arises, what about Windows 8, yes, it is a newer OS, but its interface is more suitable for mobile devices with a touch screen, which is why it is not so popular yet, but as I have heard, Microsoft has released an update for Windows 8 , Windows 8.1, in which we decided to return a little to the desktop that users are familiar with.

List of sources used

1. Lecturepedia-library of lecture material. [Electronic resource] Access mode: http://lektsiopedia.org.

2. OS Journal [Electronic]. Access mode: http://www.ossite.ru/.

3. OSys.ru - operatingsystems[Electronic resource]. Access mode: http://osys.ru/.

4. Computer science. [Electronic resource]: textbook L.Z. Shautsukova. Access mode: http://book.kbsu.ru/.

5. Mikheeva E.V. Titova O.I. Computer Science: Textbook for students of educational institutions. Prof. education. M.: Academy, 2010.

6. Computer science and information and communication technologies at school [Electronic resource]: textbook / comp. Popova O.V. Access mode: http://www.klyaksa.net/htm/kopilka/uchp/p6.htm.

Posted on Allbest.ru

Similar documents

    Purpose and main functions of operating systems. Loading programs to be executed into RAM. Handling all I/O operations. Evolution, classification of operating systems. Formation of salary statements, sorting by departments.

    course work, added 03/17/2009

    Purpose, classification, composition and purpose of operating system components. Development of complex information systems, software packages and individual applications. Characteristics of operating systems Windows, Linux, Android, Solaris, Symbian OS and Mac OS.

    course work, added 11/19/2014

    Studying the features of the operating system, a set of programs that control the operation of application programs and system applications. Descriptions of the architecture and software of modern operating systems. Advantages of the Assembler programming language.

    presentation, added 04/22/2014

    The concept of an operating system. The history of its creation and development. Varieties of modern operating systems. Basic functions of general and special purpose operating systems. Computing and operating systems, their functions. Generation of the operating system.

    course work, added 06/18/2009

    Operating system MS-DOS: history and characteristics. Overview of standard Windows operating system programs. Ways to launch programs. Windows service applications and their purpose: task manager, scanning, cleaning, defragmentation and disk archiving.

    abstract, added 01/06/2015

    The concept of an operating system as a basic set of computer programs that provides control of computer hardware, working with files, input and output of data, and execution of utilities. History of the development of operating systems of the Windows family.

    course work, added 01/10/2012

    The concept of the operating system shell, their varieties, purpose and differences from each other. Features of using operating shells on a personal computer, making it clear and simple to perform basic operations on files and directories.

    course work, added 03/29/2014

    Features of the modern stage of development of operating systems. Purpose of operating systems, their main types. Minicomputer operating systems. The operating principle of a dot matrix printer, design and reproduction of arbitrary characters for them.

    course work, added 06/23/2011

    Evolution and classification of OS. Network operating systems. Memory management. Modern concepts and technologies for designing operating systems. UNIX family of operating systems. Novell network products. Microsoft network operating systems.

    creative work, added 11/07/2007

    Linux is one of the most popular free operating systems. Work with a basic limited set of programs by default. Characteristics of the main programs that expand the capabilities of the Linux operating system for the user.







2024 gtavrl.ru.