Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Look up keyword
Like this
18Activity
0 of .
Results for:
No results containing your search query
P. 1
Real-time Operating Systems

Real-time Operating Systems

Ratings: (0)|Views: 947|Likes:
Published by priyanka1229

More info:

Categories:Types, Brochures
Published by: priyanka1229 on Jan 31, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

03/30/2013

pdf

text

original

 
REAL-TIMEOPERATINGSYSTEMS
 
ABSTRACT:The paper analyzes the performance of twodifferent real-time operating systems. We surveythe state-of-the-art in real-time operating systems(RTOSs) from the system synthesis point of view.This paper is intended to provide an overview of the basic concepts and practices that are associatedwith real time operating systems. Real-timeapplications vary tremendously in their scope, inthe tightness of their performance specificationsand in their cost constraints. Traditionalapplications were associated with the aerospace,nuclear power and defense industries. Suchsystems are large, and they must meet all deadlinesand cost is not a critical issue. While theseapplications continue to be important, embeddedcontrollers in the transportation, consumer electronics and communication industries nowconstitute a major share of real-time systems.RTOS's have a very long research history, which provides important theoretical results and usefulindustrial implementations. Convergence of applications, technology, and market trends of embedded systems implies a strong need for newgeneration of RTOS. This paper deals with asurvey of classical academic and industrial RTOSwork.I. INTRODUCTION TO OPERATING SYSTEM: An operating system is program that manages thecomputer hardware. It also provides a basis for application programs and acts as an intermediary between a user of a computer and computer hardware. The operating system controls andcoordinates the use of the hardware among thevarious application programs for various users.II. REAL TIME SYSTEM:One form of a special-purpose operating system isreal time system. Real time systems are defined asthose systems in which the correctness of thesystem depends not only on the logical result of computation, but also on the time at which resultsare produced. A real time system is used whenrigid time requirements have been placed on theoperation of the processor or the flow of data; thus,it is often used as control device in an application.Examples of this type of real time system arecommand and control system, process controlsystems, flight control system, the space shuttleavionics system, future system such as the spacestation, space – based defense system such as SDI,and large command and control systems.2.1. REAL TIME SYSTEM – OPERATINGSYSTEM:At the core of software real-time system is a real-time operating system. One of the main differences between real-time operating systems and general- purpose operating systems is the ability toguarantee a worst-case latency. On a general- purpose OS, an external interrupt could be put intoa queue and then serviced later after the OS hasfinished its current Operation and any otheinterrupts in the queue.On the other hand, a real-time OS can halt itscurrent process to handle an interrupt immediately.In essence, the real-time OS guarantees eventresponse within a certain interval. To do this, thereal-time OS assigns priorities to processes andinterrupts. If a high priority interrupt occurs, theOS immediately halts its process and services theinterrupt.2.2. NEED OF REAL TIME SYSTEM:Timing correctness requirements in a real timesystem arise because of the physical impact of thecontrolling systems activities upon its environment.For example, if the computer controlling a robotdoes not command it to stop or turn on time, therobot might collide with another object on thefactory floor possibly causing serious damage .inmany real time systems even more consequenceswill result if timing as well as logical correctness properties of the system are not satisfied, e.g.,consider nuclear power plants or air traffic controlsystem fail.2.3. BASIC FACILITIES OF RTOS:
1
 
Being fast is a necessary condition of a real timesystem, but it is not sufficient. It has to meetexplicitly deadlines and being fast on the averagedoes not guarantee that a deadline will be met. If areal time system can be shown to meet its deadlinesthen we say that it is predictable. Multitasking isrequired to develop a good real time applicationPseudo parallelism “– to handle multiple externalevents occurring simultaneously. Rate monotonicscheduling (RMS) - is utilized to compute inadvance the processor power required to handle thesimultaneous events. Algorithms (schedulingmechanism) are needed to decide which task or thread will run at a given time. Function is toswitch from one task or process to another (contextswitch).
Overhead – should be completed as quickly as possible.
Dispatch time should be independent of thenumber of threads in the ready list.
Ready list should be organized each time anelement is added to the list.III. SCHEDULING:Scheduling is a fundamental operating systemfunction. All computer resource are scheduled before use, CPU is the primary resource .itsscheduling is central to operating-system design.3.1. CPU
SCHEDULING
:CPU scheduling is a task of selecting a waiting process from the ready queue and allocating theCPU to it. The CPU is allocated to the selected process by the dispatcher.
• 
Preemptive scheduling:-
Under the following CPU scheduling can take place.1. When a process switches from the running stateto the waiting state (I/O request, or invocation of wait for the termination of one of the child processes).2. When a process switches from the running stateto the ready state (for e.g., when an interruptoccurs).3. When a process switches from the waiting stateto ready state (for e.g., completion of I/O).4. When a process terminates.In circumstances, 1 and 4 are non-preemptivescheduling, 2 and 3 are preemptive scheduling.
• 
Non-preemptive scheduling:-
Once the CPU has been allocated to process the process keeps CPU until it release the CPU either  by terminating or by switching to the waiting state.Example: - Microsoft window 3.1, appleMacintosh.
 Dispatcher latency:
the dispatcher is the modulethat gives control of CPU to the process selected bythe short-term scheduler. The time it takes for thedispatcher to stop one process and start another running is known as dispatch latency.
Scheduling criteria:
Different CPU schedulingalgorithms have different properties and may favor one class of processes over another. Thecharacteristics used for comparison can make asubstantial difference in determination of algorithm. The criteria include the following:
CPU utilization:
To keep the CPU as busy as possible. CPU utilization may range from 0-100%.In real system it should range from 40% (for lightlyloaded system) to 90% (for heavily used system).
Through put:
one measure of work is the number of processes completed for time unit called through put. E.g. for long process – 1process per hour. For short process – 10 process per second.
Turn around time:
How long it takes to executethat process. The interval from the time sufficientof a process to the time of completion is a turnaround time. Turn around time is the sum of periodspend waiting to get into memory, waiting in readyqueue, executing on CPU I/O.
Waiting time:
The CPU scheduling algorithm doesnot affect the amount of time during which a process execute nor does I/O. It affects only theamount of time that a process spends waiting in theready queue. Waiting time is done sum of periodspend waiting in the ready queue.
 Response time:
The time from the submission of request until the first response is produced. Thismeasure is called response time. The amount of time it takes to start responding but not the timethat it takes to o/p that response. 3.2. SCHEDULING ALGORITHMS:CPU scheduling deals with the problems of deciding which of the processes in ready queue isto be allocated the CPU.
1
.
First come, first-severed scheduling 
 
2. Shortest-job-first scheduling 3. Priority scheduling 4. Round-robin scheduling 
2
 
5. Multilevel queue scheduling 6. Multilevel feedback queue scheduling 
 3.3. REAL –TIME SYSTEM SCHEDULING:Real-time control applications can be mapped ontoa spectrum of performance. On one side, hard real-time systems are very deterministic and never missan event. An example of a hard real-time system inan engine dynamometer. If an event were missed.The data collected or the road conditions simulatedwould be incorrect. On the other side of thespectrum, soft real-time systems do not require thesame degree of determinism and occasionally missevents without malfunctioning. For example,missing a single data point in a temperaturemonitoring system does not impact the overalltrend because the general trend of temperaturechanges slowly. Implementing soft real timefunctionality requires careful design of thescheduler and related aspects of the operatingsystem. First, the system must have priorityscheduling, and real time processes must have thehighest priority. Second, the dispatch latency must be small the smaller the latency, the faster a realtime process can execute once it is run able. The problem is that many operating systems, includingmost versions of UNIX, are forced to wait either for a system call to complete or for an I/O block totake place before doing a context switch. 3.4. TIMING CONSTRAINTS FOR TASKS:Timing constraints can be met based on the type of application used. A task is something that needs to be done. It is often implemented in a separatethread, but does not have to be. In other words,tasks are a set of process with data dependencies between them. Tasks can be classified dependingon two factors: -1. by the predictability of their arrival.2. By the consequences of they’re not beingexecuted on time.Basing on the first factor: -
 
 Periodic-
In case of periodic task, a period mightmean ‘once per period T’ or ‘exactly T units apart’.An example of dynamically created tasks is a(periodic) task that monitors a particular flight; thiscomes into existence when the aircraft enters an air traffic control region and will cease to exist whenthe aircraft leaves the region.
• 
Aperiodic:
An aperiodic task has a deadline bywhich it must finish or start, or it may have aconstraint on both start and finish times. Periodicrequirements can arise from dynamic events suchas an object falling in front of a moving robot, or ahuman operator pushing a button on a console.Tasks, which are bounded inter arrival, are calledsporadic tasks.Depending on second factor they are critical andnon-critical tasks:
• 
Critical tasks:-
Their timely execution is critical.Ex: - life support systems, stability control of anaircraft.Despite their critical nature, it is not alwaysessential that every iteration be executedsuccessfully and within a given deadline.
 
 Non-critical tasks: -
They are not critical to theapplication. The tasks should be completed with ina given deadline; otherwise, they are not useful.IV. STRUCTURE OF REAL-TIME SYSTEM:The state of the controlled process and of theoperating environment (e g: pressure, temperature,speed and altitude) is acquired by sensor, which provides inputs to controller, the real timecomputer. The data rate from each sensor dependson how quickly the measured parameters canchange.The “trigger generator “is a representation of themechanism use to trigger the execution of individual jobs. There is a fixed set of applicationtasks or job, the “job list”That is in fig
3
Controlled processSensorsJob listclock Trigger generator ExecutionDisplayoperationActuators

Activity (18)

You've already reviewed this. Edit your review.
1 hundred reads
1 thousand reads
Nimra Khan liked this
achuu1987 liked this
gueburah liked this
Charlene Tshos liked this
lsrinivasamurthy liked this
hrdksni liked this
dhivyaammu liked this

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->