Computer software

What is software

The capabilities of a modern PC are so great that an increasing number of people are finding use for it in their work, study, and everyday life. The most important quality of a modern computer is its “user friendliness”. Communication between a person and a computer has become simple, visual, and understandable. The computer itself tells the user what to do in a given situation and helps get out of difficult situations. This is possible thanks to computer software.

Let's use the analogy between a computer and a person again. A newborn person knows nothing and cannot do anything. He acquires knowledge and skills in the process of development, learning, accumulating information in his memory. A computer that is assembled in a factory from microcircuits, wires, circuit boards and other things is like a newborn human. We can say that loading software into a computer's memory is similar to the process of teaching a child. Software is created by programmers.

The entire set of programs stored on all devices of the computer’s long-term memory constitutes it. software(BY).

Software The computer is constantly updated, developed, and improved. Price installed programs on a modern PC often exceeds its cost technical devices. Development of modern software requires very high qualifications from programmers.

Types of software

There is a necessary part in computer software, without which you simply cannot do anything on it. It is called system software. The buyer purchases a computer equipped with system software, which is no less important for the operation of the computer than the memory or processor. In addition to the system software, the computer software also includes application programs And programming systems.

Computer software is divided into:

    - system software;
    - application software;
    - programming systems.

System software and programming systems will be discussed later. Now let's get acquainted with the application software.

Application software composition

Programs with which the user can solve his information problems without resorting to programming are called application programs.

As a rule, all users prefer to have a set of application programs that almost everyone needs. They are called programs general purpose . These include:

    Text and graphic editor, with the help of which you can prepare various texts, create drawings, build drawings; in other words, write, draw, draw;

    Database management systems (DBMS), which allow you to turn your computer into a reference book on any topic;

    Table processors that allow you to organize spreadsheet calculations that are very common in practice;

    Communication (network) programs designed to exchange information with other computers connected to the data in a computer network.

A very popular type of application software is computer games. Most users begin their communication with the computer from them.

In addition, there is a large number special-purpose application programs For professional activity. They are often called application software packages. These are, for example, accounting programs that produce accruals wages and other calculations that are made in accounting departments; computer-aided design systems that help designers develop designs for various technical devices; packages that allow you to solve complex mathematical problems without writing programs; training programs on various school subjects and much more.

Questions and tasks

    1. What is computer software?
    2. What tasks does the application software perform?
    3. Name the main types of general-purpose application programs.
    4. What are special purpose applications?

About system software and programming systems

What is an operating system

It is not difficult to understand why application programs are needed. What is system software?

The main part of the system software is operating system(OS).

An operating system is a set of programs that manage RAM, processor, external devices and files and conduct a dialogue with the user.

The operating system has a lot of work to do, and it is in working order almost all the time. For example, in order to execute an application program, it must be found in external memory(on disk), place in RAM, having found free space there, “start” the processor to execute the program, monitor the operation of all machine devices during execution and, in case of failures, display diagnostic messages. The operating system takes care of all these concerns.

Here are the names of some common operating systems for personal computers: MS-DOS, Windows, Linux.

Interactive mode

During operation, the application program itself organizes communication with the user, but when the program has completed its work, the operating system begins to communicate with the user. This communication takes place in the following form:

The OS displays a prompt in some specific form. In response, the user issues a command defining what he wants from the machine. This could be a command to execute a new application program, a command to perform some operation with files (delete a file, copy, etc.), a command to report the current time or date, etc. After executing the next user command, the operating system again issues a prompt.

This mode of operation is called interactive mode. Thanks to the OS, the user never feels left to the mercy of fate. All operating systems on personal computers work with the user in dialog mode. Dialogue mode is often called interactive mode.

Service programs

In addition to the OS, system software also includes many maintenance and service programs. For example, these are disk maintenance programs (copying, formatting, “treatment”, etc.), compressing files on disks (archivers), fighting computer viruses, and much more.

Programming systems

In addition to system and application software, there is a third type of software. It is called programming systems (SP).

A programming system is a tool for a programmer to work with.

Programmers work with programming systems. Every SP is focused on a specific programming language. There are many different languages, for example, Pascal, BASIC, FORTRAN, C (“C”), Assembler, LISP, etc. In these languages, the programmer writes programs, and with the help of programming systems enters them into the computer, debugs, tests, and executes them.

Programmers create all types of programs: system, application and new programming systems.

Questions and tasks

    1. What types of software are available on modern computers?
    2. What is an operating system (OS)? What main functions does it perform?
    3. What is the interactive mode of communication between the OS and the user?
    4. What are programming systems intended for? Who works with them?

First of all, it should be said that the necessary computer programs for a resume can vary greatly depending on the specifics of your activity. Thus, those services that a web designer must have are not at all similar to those that are useful to an accountant. Therefore, as when filling out any other resume items, you should not write too much in this column. But you shouldn’t limit yourself to a monosyllabic phrase. The employer doesn't know anything about you. Where is the guarantee that you won’t end up being assigned a task that you can’t handle?

PC proficiency levels

When choosing computer programs for your resume, it is worth knowing that there are several levels of computer proficiency as such. They should under no circumstances be confused in order to avoid later unpleasant and awkward situations. Therefore, we will consider each level separately.

1. Beginner

The ability to use a computer at an elementary level means that you have an idea of ​​​​what an operating system is (most often it is Windows), you know about its main components and capabilities. This level owning a PC assumes that you can easily install new program, find the required item in the menu, copy or move files, open and close a document, etc. What computer programs do you need to master? For a resume of an applicant who claims to have basic PC knowledge, it is important that it contains information about the ability to use the basic (standard) applications of the system. That is, the same calculator, notepad, media player and others.

2. Medium

In this case, in addition to basic services, the ability to work with office applications should also be included in computer programs for a resume. Most widely used product package Microsoft Office. First of all, you need to be fluent in MS Word, be able to create and edit tables in MS Excel (as well as make calculations using formulas). Some positions also require knowledge (applications for creating and managing databases), Power Point (presentation editor). In addition to entering data, it is important to be able to create tables, graphs, charts, change its design), etc. The ability to work with browsers and quickly search for information on the Internet is desirable.

3. Confident

Many people, when filling out the “Computer skills” column, thoughtlessly write that they “have PC proficiency at the level of a confident user.” To avoid misunderstandings, remember: confident computer skills assume that you understand not only standard and office applications, but also have some skills and experience with highly specialized programs necessary for your line of work. Here you need to choose what is most suitable in a particular situation. For example, a web designer need not mention that he knows how to use the 1C: Accounting service, but about his knowledge of working with Adobe Photoshop and other experiences working with different CMSs need to be said.

The ability to work on the Internet is an important advantage for a candidate

The item “Proficiency in computer programs” in a resume, as you have already seen, is of great importance. Skills related to working on the World Wide Web can give you additional weight in the eyes of the employer. If you use it well search engines, quickly find relevant and reliable information, know how to work with you know where and how to place press releases and company advertisements, are well versed in various forums and in social networks- have no doubt that for the owners of the firm or company you will be of great value as an employee.

What if you have minimal or no PC skills?

There is no point in talking once again about how important the computer programs you know are for a resume. A list that includes a large number of applications useful for working in a particular position is guaranteed to attract the attention of the employer. But what if your ability to use a computer is at the level of a beginner, and you really want to get a position? Let’s say right away that in some cases desire alone is not enough. At the same time, sometimes you can compensate for this shortcoming by mentioning in “Personal Qualities” quick learning and a willingness to constantly learn something new.

And, of course, don’t waste your free time: by mastering several new programs, you will significantly increase your ranking in the labor market!

Programming is a creative and interesting process. In order to create programs you do not always need to know languages. What tool is needed to create programs? You need a programming environment. With its help, your commands are translated into computer-readable binary code. But there are a lot of languages, and even more programming environments. We will look at a list of programs for creating programs.

PascalABC.NET is a simple, free development environment for the Pascal language. This is what is most often used in schools and universities for teaching. This program in Russian will allow you to create projects of any complexity. The code editor will prompt and help you, and the compiler will point out errors. Possesses high speed yu program execution.

The advantage of using Pascal is that it is object-oriented programming. OOP is much more convenient than procedural programming, although it is more voluminous.

Unfortunately, PascalABC.NET is a bit demanding on computer resources and may freeze on older machines.

Free Pascal

Free Pascal is a cross-platform compiler, not a programming environment. With its help, you can check the program for correct spelling, as well as run it. But you won't be able to compile it in .exe. Free Pascal has high execution speed and a simple and intuitive interface.

Just like in many similar programs, the code editor in Free Pascal can help the programmer by completing the writing of commands for him.

Its disadvantage is that the compiler can only determine whether there are errors or not. It does not highlight the line where the error was made, so the user has to look for it himself.

Turbo Pascal

Almost the first tool for creating programs on a computer is Turbo Pascal. This programming environment was created for the DOS operating system and to run it on Windows you need to install additional software. The Russian language is supported and has high execution and compilation speed.

Turbo Pascal has such interesting function, like tracing. In trace mode, you can watch the program work step by step and monitor data changes. This will help you find the hardest errors to find—logical errors.

Although Turbo Pascal is easy and reliable to use, it is still slightly outdated: created in 1996, Turbo Pascal is only relevant for one OS - DOS.

This is a visual programming environment in Pascal. Its user-friendly, intuitive interface makes it easy to create programs with minimal language knowledge. Lazarus is almost completely compatible with the Delphi programming language.

Unlike Algorithm and HiAsm, Lazarus still requires knowledge of the language, in our case Pascal. Here you not only assemble the program piece by piece with the mouse, but also write code for each element. This allows you to better understand the processes occurring in the program.

Lazarus allows you to use a graphics module with which you can work with images and also create games.

Unfortunately, if you have questions, you will have to look for answers on the Internet, since Lazarus does not have documentation.

HiAsm

HiAsm is a free constructor that is available in Russian. You don't need to know a language to create programs - here you simply assemble it piece by piece, like a designer. There are many components available here, but you can expand their range by installing add-ons.

Unlike the Algorithm, this is a graphical programming environment. Everything you create will be displayed on the screen in the form of a drawing and diagram, not code. This is quite convenient, although some people like the text entry more.

HiAsm is quite powerful and it has high program execution speed. This is especially important when creating games that use a graphics module, which significantly slows down the work. But for HiAsm this is not a problem.

Algorithm is an environment for creating programs in Russian, one of the few. Its peculiarity is that it uses text-based visual programming. This means that you can create a program without knowing the language. An algorithm is a constructor that has a large set of components. Information about each component can be found in the program documentation.

The Algorithm also allows you to work with the graphics module, but applications using graphics will take quite a long time to run.

IN free version You can compile a project from .alg to .exe only on the developer’s website and only 3 times a day. This is one of the main disadvantages. You can purchase a licensed version and compile projects directly in the program.

IntelliJ IDEA is one of the most popular cross-platform IDEs. This environment has a free, slightly limited and paid version. For most programmers, the free version is sufficient. It has a powerful code editor that will fix errors and complete code for you. If you make a mistake, the environment lets you know and offers possible options solutions. It's an intelligent development environment that predicts your actions.

Another handy feature in InteliiJ IDEA is automatic memory management. The so-called “garbage collector” constantly monitors the memory that is allocated for the program, and, in the case when the memory is no longer needed, the collector frees it.

But everything has its downsides. A slightly confusing interface is one of the problems that new programmers face. It is also obvious that such a powerful environment has quite high system requirements for correct operation.

Most often Eclipse is used to work with the language Java programming, but it also supports other languages. It is one of the main competitors of IntelliJ IDEA. The difference between Eclipse and similar programs is that you can install various add-ons for it and it can be completely customized.

Eclipse also has high compilation and execution speeds. You can run every program created in this environment on any operating system, since Java is a cross-platform language.

The difference between Eclipse and IntelliJ IDEA is the interface. In Eclipse it is much simpler and clearer, which makes it more beginner-friendly.

But just like all IDEs for Java, Eclipse still has its own system requirements, so it will not work on every computer. Although these requirements are not so high.

It is impossible to say with certainty which software for creating programs is the best. You need to select a language and then try each environment for it. After all, each IDE is different and has its own characteristics. Who knows which one you'll like best.

In the professional skills section or additional information many indicate computer knowledge. But not everyone can make a list of computer programs for a resume. Of course, it’s best to only indicate software that you really know how to work with. After all, the recruiter may ask you to show your skills right at the interview.

Writing rules

HR officers advise writing about computer skills even to those people who are applying for a position not related to working on a PC. When describing your level of proficiency in this technique, you can indicate a list of programs that you know how to use. You also need to write down at what level you know the computer. You can indicate this as follows:

  • confident PC user;
  • average level;
  • entry-level computer skills.

But it’s not worth describing in detail about your knowledge of certain programs. Each applicant can use this example of writing this column:

Advanced user. Ability to work with basic MS Office programs (Access, Excel, Power Point, Word, WordPad), graphic editors (Picture Manager, CorelDRAW), programs for sending and receiving electronic correspondence (Outlook Express). I can search quickly necessary information on the Internet, I can work with different browsers(Opera, Firefox, Chrome, Amigo, Internet Explorer). Good knowledge of the features of the Windows operating system.

The universal version of this section may look slightly different:

Intermediate PC skills. Ability to work with MS Office programs (experience with Excel, Word), search and download necessary information via the Internet (worked with Opera browsers, Firefox), I can send emails.

Specifics of professions

There are a number of specialties for which it is necessary to list knowledge of programs that help to work. Of course, it’s better to start the description with general information about the level of computer skills and the ability to work with basic programs. For example, in an accountant’s resume this column might look like this:

Confident computer user. Knowledge of basic Microsoft programs Office, such as MS Access, Word, PowerPoint, Excel, ability to work with email (including Outlook Express, Mirramail, EmailOpenViewPro). Excellent Internet skills in various browsers (worked in Opera, Google Chrome, Mozilla Firefox and others). Knowledge of specialized computer programs: 1C: Accounting 7.7 and 8, Parus, Client-Bank systems.

Too large a list listing all kinds of software can have the opposite effect: the employer will decide that your knowledge is very superficial.

It would be nice if an applicant for the position of sales manager, in addition to the list of basic PC programs, also indicates knowledge of specialized ones. In his resume, the specified section of the “professional skills” column may look like this:

Level of competent user. Skills in searching for specialized information on the Internet, experience working with various browsers (including Explorer, Opera, Chrome and others). Knowledge of the basics of working with operating rooms Linux systems and Windows, basic office programs, text and graphics editors (Word, WordPad, PowerPoint, Access, Paint, Excel, Photoshop). Skills in working with specialized systems "BEST", 1C:Enterprise (specification "Trade and Warehouse"), experience working with CRM system regulating relationships with clients.

If the position requires more in-depth knowledge certain programs, then they must be specified. So, for the position of PHP programmer, in addition to the ability to work with a PC, you may need the following: knowledge of PHP, social media API, WordPress API, CSS, HTML, JS, CSS.

In the latter case, you need to focus on your knowledge and the employer’s requirements.

If mastering new programs does not cause you any difficulties, this is worth noting at the end of the section.

There is a necessary part in computer software, without which you simply cannot do anything on it. It is called system software. The buyer purchases a computer equipped with system software, which is no less important for the operation of the computer than the memory or processor. In addition to the system software, the computer software also includes application programs And programming systems.

Computer software is divided into:

System software;

Service software,
- application software;
- programming systems.

TO systemic primarily include operating systems and programs included in the operating system (for example, drivers for various devices computer (from the English word "drive" - ​​to manage), i.e. programs that control the operation of devices: drivers for a scanner, printer, etc.). In addition to operating systems, there are also maintenance software (they are also called service or utilities, from the English word “utilize” - to use) for disk maintenance, archivers, antivirus programs etc.

Service software- is a collection software products, providing the user Additional services in working with a computer and expanding the capabilities of operating systems. By functionality service tools can be divided into:

  • improving the user interface;
  • protecting data from destruction and unauthorized access;
  • recovery data;
  • accelerating data exchange between disk and RAM:
  • archiving and unarchiving tools;
  • antiviral agents.

Programs with which the user can solve his information problems without resorting to programming are called application programs.

As a rule, all users prefer to have a set of application programs that almost everyone needs. They are called general purpose programs. These include:

Text and graphic editors, with which you can prepare various texts, create drawings, and draw drawings; in other words, write, draw, draw;

Database management systems (DBMS), which allow you to turn your computer into a reference book on any topic;

Table processors that allow you to organize spreadsheet calculations that are very common in practice;

Communication (network) programs designed to exchange information with other computers connected to the data in a computer network.

In addition, there is a large number special-purpose application programs for professional activities. They are often called application software packages. These are, for example, accounting programs that perform payroll and other calculations that are done in accounting departments; computer-aided design systems that help designers develop designs for various technical devices; packages that allow you to solve complex mathematical problems without writing programs; training programs on various school subjects and much more.

A set of tools, including an input programming language, a translator, a machine language, and libraries standard programs, a means of debugging translated programs and assembling them into a single whole, is called programming system. In a programming system, a translator translates a program written in the input programming language into the machine instruction language of a specific computer.

26. Computer operating system (purpose, composition, loading).

All the variety of programs used on modern computer called software.

The operating system is a basic and necessary component of computer software; without it, a computer cannot operate in principle.

Operating system - This program, which ensures the joint functioning of all computer devices and provides the user with access to its resources.

Today, the most well-known operating systems for IBM-compatible personal computers are the Microsoft Windows and Linux operating system families.

MAIN FUNCTIONS OF THE OPERATING SYSTEM:

Carrying out a dialogue with the user;

I/O and data management;

Planning and organizing the program processing process;

Distribution of resources (RAM and cache, processor, external devices);

Run programs to execute;

All possible auxiliary maintenance operations;

Transferring information between different internal devices;

Software support peripheral devices(display, keyboard, disk drives, printer, etc.).

Modern operating systems have a complex structure, each element of which performs specific functions to control the computer.

File system management. The process of computer operation, in a certain sense, comes down to exchanging files between devices. The operating system has software modules that manage the file system.

Command processor - a special program that requests commands from the user and executes them.

Device Drivers - special programs that provide control of device operation and coordination information exchange with other devices, and also allow you to configure some device parameters.

The graphical interface is a shell that allowscarry out human-computer interaction in the form of a dialogue using windows, menus and controls (dialog panels, buttons, etc.). On operating systems with graphical interface the user can enter commands using the mouse, whereas in command line you must enter commands using the keyboard.

Service programs. The operating system also includes service programs , or utilities. Such programs allow you to maintain disks (check, compress, defragment, etc.), perform operations with files (archive, etc.), work in computer networks and so on.

reference system. For user convenience, the operating system usually also includes reference system. The help system allows you to quickly obtain the necessary information both about the functioning of the operating system as a whole and about the operation of its individual modules.

Operating system files are stored in the computer's external long-term memory (on a hard, floppy or laser disk). However, programs can only run if they are in RAM, so operating system files must be loaded into RAM. The disk (hard, floppy or laser) on which the operating system files are located and from which it is loaded is called systemic.

Computer self-test. The computer includes a non-volatile read-only memory (ROM) containing programs for testing the computer and the first stage of loading the OS - this is BIOS(BasicInput/OutputSystem - basic input/output system).

After turning on the power, the processor begins executing a self-test program computer POST(Power-ONSelfTest). The performance of the processor, memory and other hardware of the computer processor, video adapter, RAM, disk drives, controllers is tested hard drives and keyboards. If faults are detected, diagnostic messages are issued in the form of various sequences of short and long sound signals or in the form text messages. After successful initialization of the video card, short diagnostic messages are displayed on the monitor screen.

After self-testing, a special program in the BIOS begins searching for the OS bootloader. The available disks are accessed one by one and searched in the first boot sector of the disk special program MasterBoot (OS bootloader program).

If the disk is the system one and the bootloader program is in place, then it is loaded into RAM and control of the computer’s operation is transferred to it. The program searches for operating system files on the system disk and loads them into RAM as program modules. If there are no system disks in the computer, the message “Nonsystemdisk” appears on the monitor screen, the operating system stops loading and the computer remains inoperative.

27. Files. File name. File system. Basic operations with files.

All programs and data are stored in the long-term (external) memory of the computer in the form of files.

File- This a certain amount of information (program or data) that has a name and is stored in long-term (external) memory.

File name. The file name consists of two parts, separated by a dot: the actual file name and the extension that determines its type.

<имя файла>.<расширение>

The actual name of the file is given by the user, and the extension is set automatically by the program when it is created.

Table 1. File types and extensions

There are different operating systems various formats file names. In the operating room MS-DOS system the file name itself must contain no more than 8 letters of the Latin alphabet, numbers and some special characters, and the extension consists of three Latin letters, for example: proba.txt

In the operating room Windows system The file name can be up to 255 characters long, and you can use the Russian alphabet, for example: Information units.doc

Rules for creating a file name:

You cannot use the following characters, which are reserved for special functions: ? : * / \ “ >< |

There are special reserved words, the names of which cannot be used to name the folder. Windows OS does not allow this. The fact is that before Windows there was DOS. It used system folders with the following names: PRN, AUX, CLOCK$, NUL, COM0, COM1, COM2, COM3, COM4, ​​COM5, COM6, COM7, COM8, COM9, LPT0, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8 , LPT9, CON

File system- this is a functional part of the operating system that performs operations on files. The file system allows you to work with files and directories (directories) regardless of their content, size, type, etc.

The file system defines the general structure for naming, storing, and organizing files in the operating system.

File system functions:

  1. Saving information to external media
  2. Reading information from files
  3. Deleting files, directories
  4. Renaming files
  5. Copying files, etc.

For disks with a small number of files (up to several dozen) can be used single-level file system , when the directory (disk table of contents) is a linear sequence of file names. Such a catalog can be compared to the table of contents of a children's book, which contains only the titles of individual stories.

If hundreds and thousands of files are stored on the disk, then for ease of searching, use multi-level hierarchical file system, which has a tree structure. The initial, root directory contains subdirectories of the 1st level, in turn, each of the latter can contain subdirectories of the 2nd level, and so on. It should be noted that files can be stored in directories of all levels.

The path to the file. To find a file in a hierarchical file structure, you must specify the path to the file. The path to the file includes the logical name of the disk, written through the "\" separator, and a sequence of names of nested directories, the last of which contains the desired file.

The path to the file along with the file name is sometimes called full file name.

Operations on files. While working on a computer, the following operations are most often performed on files:

  • copying (a copy of the file is placed in another directory);
  • moving (the file itself is moved to another directory);
  • deletion (the file entry is deleted from the directory);
  • renaming (file name changes).

Graphic Windows interface allows you to perform operations on files using the mouse using the Drag&Drop method (drag and drop). There are also specialized applications for working with files, the so-called file managers : NortonCommander, TotalCommander, Explorer, etc.

In some cases, it becomes necessary to work with the command line interface. Windows provides a mode for working with the MS-DOS command line interface.

28. Computer viruses: methods of distribution, prevention of infection.

Computer virus- a type of computer program or malicious code, the distinctive feature of which is the ability to reproduce (self-replication). In addition to this, viruses can perform other arbitrary actions without the user’s knowledge, including those that harm the user and/or computer.

Even if the author of the virus did not program malicious effects, the virus can lead to computer crashes due to errors, unaccounted for subtleties of interaction with operating system and other programs. In addition, viruses usually take up some space on storage devices and take away some other system resources. Therefore, viruses are classified as malware.

Viruses spread by copying their body and ensuring its subsequent execution: introducing themselves into the executable code of other programs, replacing other programs, registering themselves in autorun, and more. A virus or its carrier can be not only programs containing machine code, but also any information containing automatically executable commands- For example, batch files and Microsoft Word and Excel documents containing macros. In addition, to penetrate a computer, a virus can use vulnerabilities in popular software (for example, AdobeFlash, Internet Explorer, Outlook), for which distributors embed it in ordinary data (pictures, texts, etc.).

Viruses spread through floppy disks (obsolete), flash drives, email, exchange systems instant messages, web pages, internet and local networks(worms).

Main types computer viruses:

Software (file): infect computer executable files with extensions com and exe. Macro viruses written using macro commands also belong to this class. They infect non-executable files (for example, in text editor MSWord or MSExcel spreadsheets).

Boot viruses are embedded in the boot sector of the disk (Boot sector) or in the sector containing the boot program system disk(MasterBootRecord - MBR). Some viruses write their body to free sectors of the disk, marking them in the FAT table as “bad” (Badcluster).

Macro viruses striking documents made in some application programs(eg Word). Infection occurs when opening a document file in a program window

Network viruses distributed over various computer networks.