Journal of Computer and Communications
Vol.03 No.07(2015), Article ID:58105,13 pages
10.4236/jcc.2015.37004
Real Time Systems with Nonpreemptive Priorities and Ample Maintenance Facilities
Joseph Kreimer1, Edward Ianovsky2
1Department of Industrial Engineering and Management, Ben-Gurion University of the Negev, Beersheba, Israel
2RAVAL ACS Ltd., Beersheba, Israel
Email: kremer@bgu.ac.il, e.ianovsky@hotmail.com
Copyright © 2015 by authors and Scientific Research Publishing Inc.
This work is licensed under the Creative Commons Attribution International License (CC BY).
http://creativecommons.org/licenses/by/4.0/



Received 21 June 2015; accepted 17 July 2015; published 20 July 2015
ABSTRACT
We consider a real time data acquisition and processing multiserver system with identical servers (such as unmanned aerial vehicles, machine controllers, overhearing devices, medical monitoring devices, etc.) which can be maintained/programmed for different kinds of activities (e.g. passive or active). This system provides a service for real time tasks arriving via several channels (such as surveillance regions, assembly lines, communication channels, etc.) and involves maintenance. We focus on the worst case analysis of the system with ample maintenance facilities exponentially distributed time to failure and maintenance times. We consider two kinds of models (with and without nonpreemptive priorities) and provide balance equations for steady state probabilities and various performance measures, when both operation and maintenance times are exponentially distributed.
Keywords:
Performance, Priority, Queueing, Real Time System, Unmanned Aerial Vehicles

1. Introduction
Real time systems (RTS) are imbedded in most modern technological structures, such as production control systems, robotic and telecommunications systems, radars, self-guided missiles, reconnaissance, aircraft and space stations, etc. These systems are widely used for the monitoring and control of physical processes.
The sustained demands of the environments in which RTS operate pose relatively rigid requirements (usually stated as time constraints) on their performance.
In RTS, a calculation that uses temporally invalid data or an action performed too early/late may be useless, and sometimes harmful―even if such a calculation or action is functionally correct. These systems are often associated with applications, in which human lives or expensive machinery may be at stake.
There exists a rich literature covering RTS and different scientific communities are treating various problems in this area. We will site only a small portion of it.
Liu and Layland in their famous work [1] presented analytic combinatorial analysis for multiprogram scheduling on a single processor. They suggested two preemptive priority driven algorithms.
Dhall and Liu [2] treated the problem of specifying an order in which the requests made by a set of periodic real-time jobs are to be executed by a multiprocessor computing system, with the goal of meeting all the deadlines with a minimum number of processors. Xio et al. in [3] presented a general cost model and an optimal solution algorithm achieving required performance objective (reliability and availability) for redundant RTS.
Several authors treated real-time Flexible Manufacturing Systems (FMS). Tawegoum et al. [4] introduced management functions in real-time monitoring of FMS. Chakravarty and Balakrishnan [5] presented the procedure for the real-time revision of production and inventory schedules in a capacitated FMS.
Efficient metaheuristic methods, such as Tabu Search (Glover and Laguna [6] ) and Greedy Randomized Adaptive Search Procedure (Feo et al. [7] ) were proposed during the last two decades of the previous century. A comprehensive survey on real-time decision problems in OR perspective is given in (Seguin et al. [8] ). Good survey on applications of Artificial Intelligence to RTS is given in (Strosnider and Paul [9] ).
We will focus on RTS with a zero deadline for the beginning of job processing. Queueing of jobs in such systems is impossible, since jobs are executed immediately upon arrival, conditional on system availability.
That part of the job which is not processed immediately is lost forever and cannot be served later.
The following works treated this kind of RTS. Kreimer and Mehrez ( [10] and [11] ) showed that the non-mix policy of never relieving an operative server maximizes the availability of a single channel RTS involving preventive maintenance and working in general regime with any arrival pattern under consideration and constant service and maintenance times. Kreimer and Mehrez [12] and Kreimer [13] treated muliserver and multichannel (with identical servers and channels) RTS (with unrestricted and restricted number of maintenance facilities respectively), working under maximum load regime (worst case) as finite source queues (Gross and Harris, [14] ). Kreimer [15] applied the two dimensional birth and death processes in worst case analysis of a multiserver RTS (with ample and limited maintenance facilities respectively) with two different channels, when both service and maintenance times were exponentially distributed. Ianovsky and Kreimer [16] obtained optimal assignment/ routing probabilities to maximize the availability of RTS with limited maintenance facilities, for large number of servers and two different channels. Kreimer [17] obtained the steady state probabilities for RTS with arbitrary number of different channels operating under a maximum load regime. Kreimer [18] considered multiserver and multichannel RTS working in general regime. Shimshi and Kreimer [19] and Kreimer [20] studied single- channel RTS with two different kinds of activities. In [21] we computed analytically (for exponentially distributed service times) and via Cross Entropy [22] - [24] simulation approach (for generally distributed service times) optimal routing probabilities for RTS with ample maintenance facilities. Bassan and Kreimer [25] treated RTS with preemptive priorities.
The work presented here is a generalization of results obtained by Shimshi and Kreimer [19] and Kreimer [20] for RTS with single channel and two kinds of activities. It deals with multiserver RTS, providing the service to the requests of real-time jobs arriving via several channels. Servers are identical, but may be maintained/pro- grammed for several (two or more) kinds of activities. We provide balance equations describing two models (with and without nonpreemptive priorities) operating under a maximum load regime and show how to compute various performance measures, when both operation and maintenance times are exponentially distributed.
The paper is organized as follows: In Section 2, the description of the model is presented. Section 3 provides balance equations for RTS with nonpreemptive priorities. Section 4 provides balance equations for RTS without priorities. Section 5 is devoted to computation of various performance characteristics. Finally, Section 6 contains conclusions.
2. Description of the Model
The most important characteristics of RTS with a zero deadline for the beginning of job processing are summarized in Kreimer and Mehrez [24] as follows:
1) Jobs/data acquisition and execution are as fast as the data arrival rate.
2) Jobs are executed immediately upon arrival, conditional on system availability. Between jobs arrival and their execution, delays are negligible.
3) That part of the job which is not executed in real time is lost forever. Storage of non-completed jobs or their parts is impossible. Thus, queues of jobs do not exist in such an RTS.
Nevertheless, some important elements of queueing theory can be successfully applied in analysis of these RTS.
We consider a multiserver multichannel RTS consisting of N identical servers (e.g. unmanned aerial vehicles- UAV, machine controllers, overhearing devices, medical monitoring devices, etc.) that provide service for the requests of real time jobs, arriving via r identical channels (e.g. surveillance regions, assembly lines, communication channels, hospital patients, etc.).
Each server can serve different channels, but not simultaneously. There is exactly one request in each channel at any instant (there are no additional job arrivals, while the channel is busy), and therefore one server at most is used (with others being on stand-by or in maintenance or providing the service to another channel) to process the job of this channel at any given time. Thus, the total number of jobs in the system is r (is equal to a number of channels). Different parts of the same job can be served by different servers. Any part of the job that is not processed immediately is lost.
It is assumed that there are ample identical maintenance teams available to repair (with repair times
being independent identically distributed random variables―i.i.d.r.v.) all N servers simultaneously, if needed. Thus, each broken server enters maintenance facilities without delay. A fixed server may be of one of m kinds (e.g. of activity or quality) with probabilities
,
respectively. These probabilities can be used sometimes as control parameters. Only after the maintenance is completed, the type of fixed server can be determined. The fixed server of i-th type is operative for a period of time
before requiring
hours of repair. Both
and
are independent exponentially distributed random values with parameters
and
respectively. The duration
of maintenance does not depend on the server’s type (neither before nor after the maintenance). After maintenance is completed, the fixed server will either be on stand-by or providing service to one of channels.
The system works under a maximum load (worst case) of nonstop data arrival, which is equivalent to the case of a unique job of infinite duration in each one of r channels. This kind of operation is typical in high performance data acquisition and control systems. Decisions based on the nonstop data flow arriving via all r channels must be made extremely fast―in real time. If, during some period of time of length T, there is no available server to serve one of the channels, it means that the part of the job of length T is lost forever.
Our purpose is to provide balance equations for steady-state probabilities of this system, its availability and other performance characteristics. We will consider two policies/models: 1) nonpreemptive priority; 2) random choice of the fixed server.
3. Model with Nonpreemptive Priority
First we will provide the list of various terms, which are used in our equations.
3.1. Equations
We suppose that servers of first activity type have the highest priority, servers of the second activity type are after them, and so on, finally, servers of the m-th activity type have the lowest priority (Figure 1). Operating server is not interrupted, independently of its priority. When the operating server must be repaired, the fixed server with highest priority takes its place.
We denote
the state of the system, where
is the total number of fixed servers of i-th activity type and
is the number of operating (providing service) fixed servers of i-th activity type respectively, and 

Figure 1. Model with priorities.
Theorem 1. Steady state probabilities for the model with nonpreemptive priorities can be found from the fol- lowing system of balance equations:

where 

And

where 
Proof:
1) First we consider the case



for the state



for the states








for the states








for the states



for the states


Now Equation (1) follows from Equations (3)-(7).
2) Next, we consider the case
Equation (3) again for the state


Equation (4) for the states







Equation (6) for the states



for the states








for the states



for the states












for the states









for the states









for the states




for the states









for the states



Now, Equation (1) follows from Equations (3), (4), (6), (8)-(15).
Q.E.D.
4. Model without Priorities
We suppose that when the operating server must go to maintenance, the server which takes its place is chosen among the fixed servers in a random way (Figure 2). Namely, if there are 




Theorem 2. Steady state probabilities for the model without priorities can be found from the following system of balance equations:
Figure 2. Model without priorities.

where 

And

where 
Proof:
1) First, we consider the case
2) Next, we consider the case
Equation (3) for the state


Equation (4) for the states







Equation (6) for the states


Equation (8) for the states







Equation (9) for the states


Equation (14) for the states








And Equation (15) for the states



For the states below, we will have following new equations:

for the states












for the states









for the states









for the states



Now, Equations (16) follows from Equations (3), (4), (6), (8), (9), (14), (15), (18)-(21).
Q.E.D.
5. Performance Characteristics
In this section, we shall show how to compute some useful performance characteristics of the RTS under consideration.
Each server can be in one of following positions:
a) Busy (operating);
b) Out of order (in maintenance);
c) On stand-by;
Each channel can be in one of two positions:
a) In service;
b) Out of service.
Keeping in mind that, the state of the system is represented by the vector






Number of fixed servers is
Number of operating fixed servers (the number of channels in service) is
Number of fixed servers of i-th activity type being on stand-by is
Number of all fixed servers being on stand-by is
Number of broken servers is
Number of channels out of service is
Now we can obtain corresponding average values, using steady state probabilities, namely:


















The use of RTS relies on the principle of availability, which can be given in our case by the following formula
Another important performance measure is the average cost of system operation during time unit. Denote 

6. Conclusions
In this paper, we provided equations for steady-state probabilities, as well as formulas for availability, average cost function and other performance characteristics of multiserver and multichannel RTS with different activity types and ample maintenance facilities. We have examined models with nonpreemptive priorities and without them. Practitioners and researchers can submit their parameters in equations for steady state probabilities and performance characteristics and to make their choice between two models in order to solve real life problems. Further research should address following problems:





The use of queueing theory methodology will have significant benefits in analysis of these systems.
Cite this paper
JosephKreimer,EdwardIanovsky, (2015) Real Time Systems with Nonpreemptive Priorities and Ample Maintenance Facilities. Journal of Computer and Communications,03,32-45. doi: 10.4236/jcc.2015.37004
References
- 1. Liu, C.L. and Layland, J.W. (1973) Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment. The Journal of the ACM, 20, 46-61. http://dx.doi.org/10.1145/321738.321743
- 2. Dhal, S.K. and Liu, C.L. (1978) On a Real-Time Scheduling Problem. Operations Research, 26, 127-140. http://dx.doi.org/10.1287/opre.26.1.127
- 3. Xie, M., Dai, Y.S., Poh, K.L. and Lai, C.D. (2004) Optimal Number of Hosts in a Distributed System Based on Cost Criteria. International Journal of Systems Science, 35, 343-353.
http://dx.doi.org/10.1080/00207720410001716228 - 4. Tawegoum, R., Castelain, E. and Gentina, J.C. (1994) Real-Time Piloting of Flexible Manufacturing Systems. European Journal of Operational Research, 78, 252-261.
http://dx.doi.org/10.1016/0377-2217(94)90387-5 - 5. Chakravarty, A.K. and Balakrishnan, N. (1998) Reacting in Real-Time to Production Contingencies in a Capacitated Flexible Cell. European Journal of Operational Research, 110, 1-19.
http://dx.doi.org/10.1016/S0377-2217(97)00212-9 - 6. Glover, F.W. and Laguna, M. (1997) Tabu Search. Kluwer Academic Publishers, Dordrecht.
http://dx.doi.org/10.1007/978-1-4615-6089-0 - 7. Feo, T.A., Venkatraman, K. and Bard, J.F. (1991) A GRASP for a Difficult Single Scheduling Problem. Computers and Operations Research, 18, 635-643.
http://dx.doi.org/10.1016/0305-0548(91)90001-8 - 8. Seguin, R., Potvin, J.-Y., Gendreau, M., Crainic, T.G. and Marcotte, P (1997) Real-Time Decision Problems: An Operational Research Perspective. Journal of the Operational Research Society, 48, 162-174. http://dx.doi.org/10.1057/palgrave.jors.2600341
- 9. Strosnider, J.K. and Paul, C.J. (1993) A Structured View of Real-Time Problem Solving. AI Magazine, 14, 45-66.
- 10. Kreimer, J. and Mehrez, A. (1993) An Optimal Operation Policy for Real-Time N-Server Stand-By System Involving Preventive Maintenance. European Journal of Operational Research, 69, 50-54.
http://dx.doi.org/10.1016/0377-2217(93)90089-6 - 11. Kreimer, J. and Mehrez, A. (1994) Optimal Real-Time Data Acquisition and Processing by a Multiserver Stand-By System. Operations Research, 42, 24-30. http://dx.doi.org/10.1287/opre.42.1.24
- 12. Kreimer, J. and Mehrez, A. (1998) Computation of Availability of a Real-Time System Using Queueing Theory Methodology. Journal of the Operational Research Society, 49, 1095-1100.
http://dx.doi.org/10.1057/palgrave.jors.2600610 - 13. Kreimer, J. (1999) Real-Time Multiserver and Multichannel Systems with Shortage of Maintenance Crews. Mathematical and Computer Modelling, 30, 169-176.
http://dx.doi.org/10.1016/S0895-7177(99)00206-X - 14. Gross, D. and Harris, C.M. (1998) Fundamentals of Queueing Theory. John Wiley, New York.
- 15. Kreimer, J. (2000) Real-Time Multiserver System with Two Non-Identical Channels and Limited Maintenance Facilities. Mathematics and Computers in Simulation, 53, 85-94.
http://dx.doi.org/10.1016/S0378-4754(00)00171-3 - 16. Ianovsky, E. and Kreimer, J. (2003) Optimization of Real-Time Multiserver System with Two Different Channels and Shortage of Maintenance Teams. Mathematics and Computers in Simulation, 63, 615-627.http://dx.doi.org/10.1016/S0378-4754(03)00092-2
- 17. Kreimer, J. (2002) Real-Time System with Homogeneous Servers and Nonidentical Channels in Steady State. Computers and Operations Research, 29, 1465-1473.
http://dx.doi.org/10.1016/S0305-0548(01)00042-9 - 18. Kreimer, J. (2002) Effectiveness Analysis of Real-Time Data Acquisition and Processing Multichannel Systems. IEEE Transactions on Reliability, 51, 91-99. http://dx.doi.org/10.1109/24.994922
- 19. Shimshi, Y. and Kreimer, J. (2000) Real-Time Multiserver System with Different kinds of Activities. Proceedings of the 11th Conference on Industrial Engineering and Management, IE&M’2000, Beer-Sheva, May 2000, 17-21.
- 20. Kreimer, J. (2003) Multiserver Single-Channel Real-Time System with Different Kinds of Activities. Communications in Dependability and Quality Management, 6, 91-100.
- 21. Ianovsky, E. and Kreimer, J. (2011) An Optimal Routing Policy for Unmanned Aerial Vehicles (Analytical and Cross- Entropy Simulation Approach). Annals of Operations Research, 189, 215-253.
http://dx.doi.org/10.1007/s10479-009-0609-1 - 22. Rubinstein, R.Y. and Kroese, D.P. (2008) Simulation and the Monte Carlo Method. 2nd Edition, John Wiley & Sons, New York.
- 23. Rubinstein, R.Y., Ridder, A. and Vaisman, R. (2014) Fast Sequential Monte Carlo Methods for Counting and Optimization. John Wiley & Sons, New York.
- 24. Kroese, D.P., Taimre, T. and Botev, Z.I. (2011) Handbook of Monte Carlo Methods, John Wiley & Sons, New York.http://dx.doi.org/10.1002/9781118014967
- 25. Bassan, E. and Kreimer, J. (2008) Multiserver and Multichannel Real-Time Systems with Separate Queues and Pre- emptive priorities. Computer Modelling and New Technologies, 42, 7-15.
- 26. Ianovsky, E. (2005) Analysis and Optimization of Real-Time Systems. PhD Thesis, Ben-Gurion Univer-sity of the Negev, Beer-Sheva.
Notations
N number of servers
r number of channels
m number of server’s activity or quality kinds/types












D penalty cost for the time unit during which one of channels was not served
Av system availability
TC an average total cost of system operation per time unit










