4.5 Operating system and control device resource allocation

Lecture



The operating system allocates computer resources — time and memory, and also regulates access to these resources. The software of stations in the telecommunications network performs not only the tasks reflected by the algorithms and related to establishing the connection and various tasks. This is taken into account when allocating the resources of the control device (computer) and the tasks are divided into levels.

When allocating the computer’s operating time, the following levels are provided (the lower the level number, the higher the priority when interrupting):

  • 1st (upper level) - manual intervention, which is protected by a password for service personnel with a corresponding right to interrupt;
  • Level 2 - control and recovery functions;
  • Level 3 - functions that are called periodically by a timer signal;
  • 4th level - station procedures and processes.

The most popular functions are periodic tasks and call processing tasks. The diagram of performance of these functions is shown in fig. 4.9.

As can be seen from the figure, the tasks of performing the basic algorithms are solved in the time remaining from the periodically performed tasks, which in telecommunications stations have a relatively short period. For example, the scanning program is activated every 10 ms (see "Algorithms of individual functions performed in software-controlled stations" Scanning Algorithm ").

Therefore, periodic programs need to be made fast or include a minimum number of functions. The best solution is to allocate for periodic tasks a separate processor that will work in parallel with the processor that handles the connection.

  4.5 Operating system and control device resource allocation

Fig. 4.9. Chart of distribution of time between usual and periodic tasks; T - the minimum period of the tasks

ATS software is built according to the block diagram, an example of which for tasks directly involved in servicing station devices (basic tasks) is shown in fig. 4.10. This structural diagram consists of levels (two levels are shown in Fig. 4.10) and is the basis for building a task manager. The dispatcher assigns task priorities according to this structural diagram. First distributed to the subsystems of the top-level tasks of this structural diagram (in this example, this is call processing, maintenance, etc.), then the tasks within each level of this scheme. Each subsystem has its own task manager, which organizes the sequence of program execution, optimizing the queues and processing the time of the request.

An example of the block diagram of the station software (basic tasks) is shown in fig. 4.10.

  4.5 Operating system and control device resource allocation

Fig. 4.10. An example of a block diagram of software

Theoretical position

In order to understand the ideology of the sequence of development and research of the software proposed above, we present several provisions from the theory of algorithms. The concept of "algorithm" does not have a strict mathematical definition, therefore it is an initial concept, defined informally. There are a number of informal, but generally accepted definitions of the algorithm [37, 43, 48,53].

The main one is this.

The algorithm is characterized by the following properties:

  1. Discreteness Algorithm - a description of the process of sequential construction of quantities, going in discrete time, in such a way that at the initial moment the initial final system is set, and at each next moment a new system of values ​​that is obtained according to a certain law (program) from the system of values ​​obtained in the previous moment of time.
  2. Determinism. The system of values ​​obtained at some (non-initial) point in time is uniquely determined by the system of values ​​obtained at the previous point in time.
  3. Elementary steps of the algorithm. The law of obtaining a subsequent system of values ​​from the preceding should be simple and local.
  4. The focus of the algorithm. If the method of obtaining the subsequent value does not give a result, then it should be indicated what should be considered the result of the algorithm.
  5. Mass. The initial system of values ​​can be chosen from some potentially infinite set.

This definition contains, in turn, concepts that themselves require a definition - “value”, “method”, “simple”, “local”.

The only justification for this definition given in the literature is that if experts called something an algorithm, it possessed the specified properties (from the satellite control program to the description of cookbook recipes).

In addition, the listed rules allow you to proceed to the next step of formalization.

If the algorithm is composed in accordance with these informal rules, then it is possible to take the next processing step. The concepts included in it can be renumbered, that is, according to a certain rule, each of them can be assigned a number.

Then any algorithmic problem can be reduced to the problem of determining a certain given number y from a given system of integer parameters:

x 1 , x 2 , ..., x n .

If any algorithm can be reduced to the calculation of such a function, then we are told that there is a computable function representing this algorithm.

Then there is a hypothesis accepted by all the mathematicians of the world, the thesis of Church. She claims that the class of recursive functions is identical with the class of everywhere or partially computable functions.

The recursive function has a clear definition given earlier and has been sufficiently studied in mathematics [33, 43, 53].

Such reasoning indicates the approach to the formalization of the development of algorithmic and software. It consists of the following steps:

  1. The development of the algorithm in accordance with the above informal definition. For this development, we used the automaton approach and the SDL language.
  2. The numbering of all concepts and the transition to a computable function. Transition from computable to recursive. For the numbering, we used the INPUTS, OUTPUTS tables, etc. (note that there is a special section in mathematics devoted to numbering) and a correspondence table for recording the function.
  3. Further, mathematical processing of functions (optimization) is possible in accordance with their classification and the use of theorems proved long ago (such as the universal program theorem, the acceleration theorem, etc.).
  4. In conclusion, a simple transition from a mathematical function to selected or specified implementation languages ​​(commands and programming language operators, chipsets, relay contacts and other means of displaying logical operations) follows.

This path opens the way to the use of typical functions, as is customary in mathematics, where the linear function is used to describe the laws of mechanics (Newton's laws) and electrical engineering (Ohm's law).

The following types are already known for recursive functions [53]:

  • recurrent recursion
  • simultaneous recursion
  • parameter recursion,
  • recursion in many ways.

This list allows you to describe, classify, optimize a wide range of tasks solved by modern software. For those tasks that do not fall under this list, it is possible to apply a table entry or construct functions by points in the same way as is done in Fourier series.

Brief summary

  • All functions of control devices implemented in hardware can be implemented by programs.
  • The main features of the switching station software: it has a large amount, it works in real time, it is massive, alienable, easy to maintain.
  • Modern software is developed using object-oriented programming systems.
  • The basis of the object-oriented approach consists of the following concepts: object, attribute, message (method), object interface, contract.
  • For building software, its development and operation, many applications use the Common Object Request Broker Architecture (CORBA) - Common Architecture with sending requests to an object through an intermediary.
  • According to modern classification, this architecture belongs to the client-server architecture class. The main feature of the CORBA architecture is the availability of the ORB (Object Request Broker) software bus. The ORB is responsible for distributing client requests to the appropriate servers.
  • The tabular method, or the method of the universal program, is one of the methods of the object-oriented approach to programming.
  • Objects can be virtual (imaginary), which do not really exist, but are described logically and are displayed only in memory. One of these important objects is the connection.
  • A connection is a dynamic object whose composition may change during processing and may be displayed by a function.
  • Functionally the object "connection" can be displayed in two ways: decentralized / centralized.
  • Universal programs are programs that, in a sense, implement all programs. It should be able to encode and decode the numbers of all programs that can be written and valid in a given programming language.
  • To develop a universal program, a state machine model is used. In the state machine model, any algorithm is reflected by a recursive function, which, in turn, is displayed by the correspondence table. To do this, enter the appropriate numbering that displays the possible values ​​of the operators.
  • Using a table requires software support to minimize the tables, minimize their storage in memory, search and correction.
  • The table makes it possible to develop a software bus or a universal program in the sense indicated by mathematics, that is, it allows you to encode and decode the numbers of algorithms that can be written and valid in the SDL language.
  • A feature of telecommunications device software is the need for multitasking. Therefore, the concept of a global state and a special process for processing the entire call flow are applied to call processing.
  • The software of stations in the telecommunications network performs not only the tasks reflected by the algorithms and related to establishing the connection and various tasks. This is taken into account when allocating the resources of the control device (computer), and the tasks are divided into levels.
  • The most popular functions are periodic tasks. The execution of the basic algorithms occurs during the time left from the periodically performed tasks, which in telecommunication stations have a relatively short period.
  • The “algorithm” does not have a rigorous mathematical formulation; therefore, it is an initial concept, defined informally. The algorithm is characterized by the following properties: discreteness, determinism, elementary steps, directionality of the algorithm, mass character.
  • If the algorithm is composed in accordance with these informal rules, then it is possible to take the next processing step. The concepts included in it can be renumbered, that is, according to a certain rule, each of them can be assigned a number. This leads the task of developing an algorithm to find the corresponding recursive function.

Comments


To leave a comment
If you have any suggestion, idea, thanks or comment, feel free to write. We really value feedback and are glad to hear your opinion.
To reply

Telecommunication Services and Devices

Terms: Telecommunication Services and Devices