WO2004063926A1 - Operating system, method and computer program product for controlling a data processing system - Google Patents

Operating system, method and computer program product for controlling a data processing system Download PDF

Info

Publication number
WO2004063926A1
WO2004063926A1 PCT/RU2003/000004 RU0300004W WO2004063926A1 WO 2004063926 A1 WO2004063926 A1 WO 2004063926A1 RU 0300004 W RU0300004 W RU 0300004W WO 2004063926 A1 WO2004063926 A1 WO 2004063926A1
Authority
WO
WIPO (PCT)
Prior art keywords
tasks
operating system
gpos
real time
kernel
Prior art date
Application number
PCT/RU2003/000004
Other languages
French (fr)
Inventor
Vladimir Anatolievich Pavlov
Viktor Vikentievich Nikiforov
Mikhail Viktorovich Danilov
Nikita Valerievich Gutsalov
Original Assignee
Motorola, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Motorola, Inc. filed Critical Motorola, Inc.
Priority to PCT/RU2003/000004 priority Critical patent/WO2004063926A1/en
Priority to AU2003225446A priority patent/AU2003225446A1/en
Publication of WO2004063926A1 publication Critical patent/WO2004063926A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE

Definitions

  • the present invention relates to an operating system, a method and a computer program product for controlling a data processing system.
  • RT real time
  • Computer programs written for RT systems should work in co-ordination with a set of external physical or information processes. RT systems produce information that is consumed mainly by the automatic equipment. Results of RT system functioning may appear in an appropriate control of external processes, e.g. in those instances of output data that influence on behavior of external objects and are not presented or saved in any other form. This is a reason why RT systems as well as corresponding software applications may be regarded as equipment-oriented systems or applications.
  • RT software application is built as a set of RT tasks processing and generating these input and output data.
  • a task is defined as a self-contained package of data and executable procedures, which operate on that data (perform logical functions) .
  • Each RT task runs independently in regard to the control flow.
  • Each task has its own priority (corresponding to an importance of its function and a necessity of fast response) .
  • Each task is activated with its own rate corresponding to a kind of input data that it processes.
  • Tasks may interact with each other via data exchanges and synchronization actions. Coordination of their executions with external processes is the most important feature of RT system. This coordination includes mutual synchronization of software tasks and external processes as well as data exchange between them.
  • RT software applications are supported by RT operating systems (RTOSs) .
  • RTOS includes RT kernel that is a relatively small basic system component. It implements only those service routines that concern task execution control. Examples of such service routines are: task creation and deletion, task scheduling, time control, inter-task communication, task synchronization, resource sharing by tasks, etc.
  • RTOS includes additional components that implement service routines supporting file system, networking, user's interface and other means of the upper level.
  • RT software application can be managed by RT kernel only if it does not use such upper level means .
  • GPOSs general-purpose operating systems
  • GPOSs represent operating systems of the type opposite to RTOS: they support software applications, which are person-oriented and not equipment-oriented ones.
  • the final destination of the results of such applications is a human person.
  • the results are presented on a screen or in printed form, are saved in files or databases, sent into networks.
  • Requirements for applications supported by GPOS do not usually include explicit time restrictions.
  • RTOS watches the deadlines of task executions and GPOS does not. Instead GPOSs are optimized in regard to an average productivity.
  • GPOSs and their libraries are oriented to implementation of appropriate graphical user interface (GUI) and efficient employment of peripheral devices.
  • GUI graphical user interface
  • GPOSs as person-oriented systems, are equipped with a large amount of various software tools: programming systems, databases, modeling systems, word processors, design systems, web-browsers, communicators, games, etc. On closer examination, GPOS implements some RT features.
  • peripheral devices such as disks, display screens, keyboards, printers, network controllers form a set of external processes for CPU, which require on-time responses.
  • implementation of some RT features in GPOS is not the aim but only a mean for support of person-oriented applications because requirements for applications themselves do not contain any time restrictions.
  • the basic GPOS component is GPOS kernel that implements task execution control, task scheduling, time control, inter-task communication, task synchronization, resource sharing by tasks, etc.
  • GPOS includes also the components that implement service routines supporting file system, networking, user's interface and so on.
  • RT systems require consolidation of person-oriented and equipment-oriented features contained in a single integrated application. Such systems should control external automatic equipment in RT mode and at the same time they should provide a human person with services and tools of GPOS.
  • the RT mode functions should be executed in timely fashion and these functions should be implemented by RT tasks that run under control of RT kernel or RTOS.
  • the simplest way to support person-oriented system functions is use of GPOS with corresponding libraries.
  • Combined OS should support combined applications consisting of two kinds of tasks: RT tasks for external automatic equipment control and GP tasks (tasks controlled by GPOS) that perform functions typical for person-oriented systems.
  • RT tasks and GP tasks in combined application may have to share mutual resources.
  • This mechanism can be implemented by combined mutexes that are accessible from RT tasks as from GP tasks.
  • Combined mutex is a synchronization element that guards an access to shared resources .
  • Beckhoff US Pat. No. 6,167,425, discloses a technique for regular time-sharing between the RT control program and the rest part of software including GPOS together with the set of tasks that it supports.
  • the execution is switched at the predefined time instants between GPOS and RT control program.
  • a special switching interrupt arrives at the beginning of each period.
  • the switching interrupt handler tunes the processor environment for processing RT control program that runs during initial part (RT part) of the operating period.
  • the RT part of operating period is restricted by second switching interrupt that occurs inside the operating period.
  • the second switching interrupt tunes the processor environment for processing GPOS with the set of its tasks. Such pair of the processor environment tuning operations is performed in each operating period.
  • This invention does not require any specific architectural features from RT control program or from GPOS .
  • Yodaiken US Pat. No. 5,995,745, discloses another technique.
  • the software system is built on a dual-kernel basis.
  • One kernel is slightly modified GPOS, which supports GP tasks.
  • the second kernel is a specialized RT kernel for supporting RT tasks.
  • the main idea of Yodaiken' s invention is to provide GPOS (together with the whole set of GP tasks) as one of the RT tasks.
  • GPOS based on such technique, utilizes the resource of processor time, which is not used by RT kernel.
  • the invention suggests using a specialized mechanism (RT-PIFO queues) for data exchange and synchronization between RT tasks and GP tasks. This provides a possibility for developing applications (combined applications) that include two interacted task sets: set of RT tasks and set of GP tasks.
  • the task scheduler in GPOS and the task scheduler in RT kernel are built separately and independently because GPOS is treated as one of RT tasks. Additionally mechanism of mutexes is implemented separately for GP tasks and for RT tasks . Mutexes that are defined for GP tasks are not accessible for RT tasks and vice versa. Therefore it is not possible to share directly mutual resources between RT tasks and GP tasks.
  • the inventors have recognised that there is a need for an operating system, a method and a computer program product for controlling a data processing system, which alleviates or overcomes the disadvantages of the prior art.
  • the operating system and the method of the invention are preferably for use in automated systems with a man- operator in control loop, i.e. systems with supervisory control: automobiles and other transportation means, flexible manufacturing systems, robotics for extraordinary situations, etc.
  • an operating system for use with a computing device, for managing general purpose tasks and real time tasks, said operating system comprises a RT kernel and a GPOS whereas said RT kernel includes a virtual machine and real time service routines and said GPOS includes general purpose operating system service routines, said operating system further includes an integrated task scheduler that manages control of both said general purpose tasks and said real time tasks.
  • Said integrated task scheduler comprises means for controlling of general purpose tasks by said RT kernel .
  • Said integrated task scheduler comprises means for controlling of real time tasks by said GPOS.
  • a method of controlling real time tasks and general purpose tasks said method is capable of being implemented on a data processing system comprising a processor that executes a computer executable code and a storage medium for storing an operating system comprising a RT kernel and a GPOS, said method containing the following steps: (a) choosing a real time task ⁇ * p with the highest priority P* p from a subset ⁇ ⁇ of real time tasks that are ready to be run; (b) choosing a general purpose task ⁇ with the highest priority P from a subset ⁇ f ⁇ of general purpose tasks that are ready to be run; (c) comparing said priority values P ⁇ and P ;
  • a computer program product stored on a computer usable medium, comprising computer readable program means for causing a computer to perform all the steps of the method according to the present. invention.
  • the present invention has provided an operating system, a method and a computer program product for controlling a data processing system.
  • This invention substantially alleviates the aforementioned problems. Thanks to the present invention it is possible to share directly mutual resources between RT tasks and GP tasks in one operating system.
  • FIG. 1 is an illustration of architecture of the operating system in accordance with an embodiment of the present invention
  • Fig. 2 is an illustration of priority ranges for RT tasks and GP tasks in the operating system in accordance with an embodiment of the present invention.
  • real-time service routines herein below refers to RT kernel components that perform system operations according to calls from RT tasks.
  • general-purpose operating system service routines herein below refers to GPOS components that perform system operations according to calls from GP tasks .
  • a combined application controls specific devices, i.e. hardware units 102 that represent the system peculiarities. Interactions between said combined application and said hardware 102 reflect specific features of said combined application. The specific features are implemented in Real Time components, 104 and 106 of the combined application.
  • One of the components of the RT kernel 104 is a virtual machine 110, which registers interrupts that shall be processed by GPOS interrupt handlers. At the moment, when corresponding GPOS interrupt handler becomes the highest priority ready component, the virtual machine initiates its execution.
  • An integrated task scheduler 108 which is shared between a General Purpose Operating System 112 and said RT kernel 104 controls both RT and GP tasks 116 and 118 respectively.
  • the integrated task scheduler 108 allows said combined application to have low priority tasks controlled by said RT kernel 104 as well as high priority tasks controlled by said GPOS 112.
  • Said RT kernel service routines 106 may be more convenient than said GPOS service routines 114 for low priority activities.
  • a high priority activity may require GPOS services or GPOS libraries.
  • the designer of high priority activity may prefer GPOS service routines 114 than RT service routines 106.
  • N units 102 are designed to be activated directly via hardware mechanism of external interrupts. In this sense said ISRs are hardware activated tasks. Objects of the second kind (ordinary tasks) are designed to be activated by software routines, i.e. by components of GPOS or RT kernel) according to scheduling policy.
  • a combined application contains two kinds of ISRs: GPOS ISRs 204 for a support of ordinary hardware units and RT ISRs 202 for a support of specific devices. In Table 1 they are marked by a and b, correspondingly. Besides, it contains two kinds of ordinary tasks : tasks that run under GPOS and tasks that run under RT kernel, which are marked by c and d, correspondingly. Table 1. Scheduled objects in combined application.
  • ISRs a support specific b : support ordinary hardware units, hardware units, designed to be designed to be activated by hardware activated by hardware interrupts interrupts
  • Ordinary c support specific d : support ordinary tasks hardware units, hardware units, designed to be designed to be activated by RT activated by GPOS kernel
  • integrated task scheduler 108 The concept of integrated task scheduler 108 is based on the following assumptions: - the objects of kind a are activated directly by hardware interrupts; both kinds c and d of ordinary tasks are activated by the integrated task scheduler; the tasks of kind J , i.e. GPOS ISRs 204, may be activated by the integrated task scheduler 108.
  • Implementation of said combined mutexes may be supplied with protocols preventing a priority inversion (priority inheritance, priority protect protocols) .
  • a real time task ⁇ jj with the highest priority and a general purpose task x f with the highest priority are chosen by integrated task scheduler 108.
  • the tasks are taken from subsets of real time ⁇ ⁇ and general purpose ⁇ f ⁇ tasks respectively.
  • priority values of the chosen tasks are compared by integrated task scheduler 108. The task with higher priority is appointed as the current task to be performed.

Abstract

In accordance with the present invention there is those provided an operating system comprising a RT kernel (104) and a GPOS (112), whereas said RT kernel (104) includes a virtual machine (110) and real time service routines (106). Said GPOS (112) includes general purpose operating system service routines (114). Said operating system further includes an integrated task scheduler (108) that manages control of both said general purposes tasks (116) and said real time tasks (118).

Description

OPERATING SYSTEM, METHOD AND COMPUTER PROGRAM PRODUCT FOR CONTROLLING A DATA PROCESSING SYSTEM
Technical Field The present invention relates to an operating system, a method and a computer program product for controlling a data processing system.
Background A growing number of computer systems should satisfy requirements for more or less restricted response time and various types of deadlines of system actions. It means that such systems should satisfy real time (RT) requirements. Computer programs written for RT systems (RT software applications) should work in co-ordination with a set of external physical or information processes. RT systems produce information that is consumed mainly by the automatic equipment. Results of RT system functioning may appear in an appropriate control of external processes, e.g. in those instances of output data that influence on behavior of external objects and are not presented or saved in any other form. This is a reason why RT systems as well as corresponding software applications may be regarded as equipment-oriented systems or applications.
A variety of external processes in complicated RT systems is very wide. Each external process generates specific kinds of input data for the RT system and every kind of such input data is characterized by specific rate and specific requirements for response time.
Correspondingly, RT software application is built as a set of RT tasks processing and generating these input and output data. A task is defined as a self-contained package of data and executable procedures, which operate on that data (perform logical functions) . Each RT task runs independently in regard to the control flow. Each task has its own priority (corresponding to an importance of its function and a necessity of fast response) . Each task is activated with its own rate corresponding to a kind of input data that it processes. Tasks may interact with each other via data exchanges and synchronization actions. Coordination of their executions with external processes is the most important feature of RT system. This coordination includes mutual synchronization of software tasks and external processes as well as data exchange between them.
RT software applications are supported by RT operating systems (RTOSs) . RTOS includes RT kernel that is a relatively small basic system component. It implements only those service routines that concern task execution control. Examples of such service routines are: task creation and deletion, task scheduling, time control, inter-task communication, task synchronization, resource sharing by tasks, etc. Besides RT kernel, RTOS includes additional components that implement service routines supporting file system, networking, user's interface and other means of the upper level. RT software application can be managed by RT kernel only if it does not use such upper level means . On the other hand, general-purpose operating systems (GPOSs) represent operating systems of the type opposite to RTOS: they support software applications, which are person-oriented and not equipment-oriented ones. The final destination of the results of such applications is a human person. The results are presented on a screen or in printed form, are saved in files or databases, sent into networks. Requirements for applications supported by GPOS do not usually include explicit time restrictions. RTOS watches the deadlines of task executions and GPOS does not. Instead GPOSs are optimized in regard to an average productivity. GPOSs and their libraries are oriented to implementation of appropriate graphical user interface (GUI) and efficient employment of peripheral devices. GPOSs, as person-oriented systems, are equipped with a large amount of various software tools: programming systems, databases, modeling systems, word processors, design systems, web-browsers, communicators, games, etc. On closer examination, GPOS implements some RT features. Indeed, peripheral devices such as disks, display screens, keyboards, printers, network controllers form a set of external processes for CPU, which require on-time responses. However implementation of some RT features in GPOS is not the aim but only a mean for support of person-oriented applications because requirements for applications themselves do not contain any time restrictions.
The basic GPOS component is GPOS kernel that implements task execution control, task scheduling, time control, inter-task communication, task synchronization, resource sharing by tasks, etc. GPOS includes also the components that implement service routines supporting file system, networking, user's interface and so on. Nowadays some kinds of RT systems require consolidation of person-oriented and equipment-oriented features contained in a single integrated application. Such systems should control external automatic equipment in RT mode and at the same time they should provide a human person with services and tools of GPOS. The RT mode functions should be executed in timely fashion and these functions should be implemented by RT tasks that run under control of RT kernel or RTOS. The simplest way to support person-oriented system functions is use of GPOS with corresponding libraries. Therefore, the problem arises to design a technique for merging RTOS (RT kernel) and GPOS in combined OS . Combined OS should support combined applications consisting of two kinds of tasks: RT tasks for external automatic equipment control and GP tasks (tasks controlled by GPOS) that perform functions typical for person-oriented systems. RT tasks and GP tasks in combined application may have to share mutual resources. To synchronize accesses to such resources, it is necessary to have a specialized mechanism. This mechanism can be implemented by combined mutexes that are accessible from RT tasks as from GP tasks. Combined mutex is a synchronization element that guards an access to shared resources .
Beckhoff, US Pat. No. 6,167,425, discloses a technique for regular time-sharing between the RT control program and the rest part of software including GPOS together with the set of tasks that it supports. According to the suggested technique, the execution is switched at the predefined time instants between GPOS and RT control program. The whole software system works cyclically with fixed operating period Ts (e.g. Ts = 1 ms or Ts = 0.1 ms) . A special switching interrupt arrives at the beginning of each period. The switching interrupt handler tunes the processor environment for processing RT control program that runs during initial part (RT part) of the operating period. The RT part of operating period is restricted by second switching interrupt that occurs inside the operating period. The second switching interrupt tunes the processor environment for processing GPOS with the set of its tasks. Such pair of the processor environment tuning operations is performed in each operating period. This invention does not require any specific architectural features from RT control program or from GPOS .
Yodaiken, US Pat. No. 5,995,745, discloses another technique. The software system is built on a dual-kernel basis. One kernel is slightly modified GPOS, which supports GP tasks. The second kernel is a specialized RT kernel for supporting RT tasks. The main idea of Yodaiken' s invention is to provide GPOS (together with the whole set of GP tasks) as one of the RT tasks. GPOS, based on such technique, utilizes the resource of processor time, which is not used by RT kernel. The invention suggests using a specialized mechanism (RT-PIFO queues) for data exchange and synchronization between RT tasks and GP tasks. This provides a possibility for developing applications (combined applications) that include two interacted task sets: set of RT tasks and set of GP tasks.
According to Yodaiken' s solution the task scheduler in GPOS and the task scheduler in RT kernel are built separately and independently because GPOS is treated as one of RT tasks. Additionally mechanism of mutexes is implemented separately for GP tasks and for RT tasks . Mutexes that are defined for GP tasks are not accessible for RT tasks and vice versa. Therefore it is not possible to share directly mutual resources between RT tasks and GP tasks.
Summary of the Invention The inventors have recognised that there is a need for an operating system, a method and a computer program product for controlling a data processing system, which alleviates or overcomes the disadvantages of the prior art. The operating system and the method of the invention are preferably for use in automated systems with a man- operator in control loop, i.e. systems with supervisory control: automobiles and other transportation means, flexible manufacturing systems, robotics for extraordinary situations, etc.
In accordance with the present invention there is thus provided an operating system, for use with a computing device, for managing general purpose tasks and real time tasks, said operating system comprises a RT kernel and a GPOS whereas said RT kernel includes a virtual machine and real time service routines and said GPOS includes general purpose operating system service routines, said operating system further includes an integrated task scheduler that manages control of both said general purpose tasks and said real time tasks.
Said integrated task scheduler comprises means for controlling of general purpose tasks by said RT kernel .
Said integrated task scheduler comprises means for controlling of real time tasks by said GPOS.
In accordance with another aspect of the present invention there is thus provided a method of controlling real time tasks and general purpose tasks, said method is capable of being implemented on a data processing system comprising a processor that executes a computer executable code and a storage medium for storing an operating system comprising a RT kernel and a GPOS, said method containing the following steps: (a) choosing a real time task τ*p with the highest priority P*p from a subset {τ } of real time tasks that are ready to be run; (b) choosing a general purpose task τ^ with the highest priority P from a subset {τf } of general purpose tasks that are ready to be run; (c) comparing said priority values P ψ and P ;
(d) appointing a task with higher priority, of the tasks τ*p and τ^ to be the current task.
In accordance with yet another aspect of the present invention there is thus provided a computer program product stored on a computer usable medium, comprising computer readable program means for causing a computer to perform all the steps of the method according to the present. invention.
The present invention has provided an operating system, a method and a computer program product for controlling a data processing system. This invention substantially alleviates the aforementioned problems. Thanks to the present invention it is possible to share directly mutual resources between RT tasks and GP tasks in one operating system. Brief description of the drawings
The present invention will be understood and appreciated more fully from the following detailed description taken in conjunction with the drawings in which: Fig. 1 is an illustration of architecture of the operating system in accordance with an embodiment of the present invention;
Fig. 2 is an illustration of priority ranges for RT tasks and GP tasks in the operating system in accordance with an embodiment of the present invention.
Detailed description of an embodiment of the invention The term real-time service routines herein below refers to RT kernel components that perform system operations according to calls from RT tasks. The term general-purpose operating system service routines herein below refers to GPOS components that perform system operations according to calls from GP tasks .
Referring to Fig. 1 a combined application controls specific devices, i.e. hardware units 102 that represent the system peculiarities. Interactions between said combined application and said hardware 102 reflect specific features of said combined application. The specific features are implemented in Real Time components, 104 and 106 of the combined application. One of the components of the RT kernel 104 is a virtual machine 110, which registers interrupts that shall be processed by GPOS interrupt handlers. At the moment, when corresponding GPOS interrupt handler becomes the highest priority ready component, the virtual machine initiates its execution.
An integrated task scheduler 108, which is shared between a General Purpose Operating System 112 and said RT kernel 104 controls both RT and GP tasks 116 and 118 respectively. The integrated task scheduler 108 allows said combined application to have low priority tasks controlled by said RT kernel 104 as well as high priority tasks controlled by said GPOS 112. Said RT kernel service routines 106 may be more convenient than said GPOS service routines 114 for low priority activities. On the other hand, a high priority activity may require GPOS services or GPOS libraries. At last, the designer of high priority activity may prefer GPOS service routines 114 than RT service routines 106.
Architecture, suggested in this invention allows introducing a special kind of synchronisation objects: combined mutexes. Said combined mutexes may be implemented to improve servicing of applications with close interactions between GP tasks 116 and RT tasks 118. Each instance of such object (i.e. each combined mutex) is accessible as for any GP task 116 as for any RT task 118. Therefore said combined mutexes are mechanisms for a guarded access to resources that are shared between activities of two different kinds: GP tasks 116 and RT tasks 118. Referring to Fig. 2 and to integrated task scheduler 108, there are two kinds of scheduled objects in the system: interrupt service routines (ISRs) 202 and 204, ordinary tasks 116 and 118. Objects of the first kind provide synchronization between said combined application and external hardware
N units 102. They are designed to be activated directly via hardware mechanism of external interrupts. In this sense said ISRs are hardware activated tasks. Objects of the second kind (ordinary tasks) are designed to be activated by software routines, i.e. by components of GPOS or RT kernel) according to scheduling policy.
According to its features, a combined application contains two kinds of ISRs: GPOS ISRs 204 for a support of ordinary hardware units and RT ISRs 202 for a support of specific devices. In Table 1 they are marked by a and b, correspondingly. Besides, it contains two kinds of ordinary tasks : tasks that run under GPOS and tasks that run under RT kernel, which are marked by c and d, correspondingly. Table 1. Scheduled objects in combined application.
Objects Operating environment
RT kernel GPOS
ISRs a : support specific b : support ordinary hardware units, hardware units, designed to be designed to be activated by hardware activated by hardware interrupts interrupts
Ordinary c : support specific d : support ordinary tasks hardware units, hardware units, designed to be designed to be activated by RT activated by GPOS kernel
The concept of integrated task scheduler 108 is based on the following assumptions: - the objects of kind a are activated directly by hardware interrupts; both kinds c and d of ordinary tasks are activated by the integrated task scheduler; the tasks of kind J , i.e. GPOS ISRs 204, may be activated by the integrated task scheduler 108.
Implementation of said combined mutexes may be supplied with protocols preventing a priority inversion (priority inheritance, priority protect protocols) .
When an event that requires rescheduling of tasks in said operating system occurs a real time task τjj, with the highest priority and a general purpose task x f with the highest priority are chosen by integrated task scheduler 108. The tasks are taken from subsets of real time {τ } and general purpose {τf } tasks respectively. In the following step priority values of the chosen tasks are compared by integrated task scheduler 108. The task with higher priority is appointed as the current task to be performed.

Claims

Claims
1. An operating system, for use with a computing device, for managing general purpose tasks (116) and real time tasks (118) , said operating system comprises a RT kernel (104) and a GPOS (112) whereas said RT kernel (104) includes a virtual machine (110) and real time service routines (106) and said GPOS (112) includes general purpose operating system service routines (114) , said operating system being characterized in that it further includes an integrated task scheduler (108) that manages control of both said general purpose tasks (116) and said real time tasks (118) .
2. An operating system according to claim 1 wherein said integrated task scheduler (108) comprises a means for controlling of general purpose tasks (116) by said RT kernel (104) .
3. An operating system according to claim 1 wherein said integrated task scheduler (108) comprises a means for controlling of real time tasks (118) by said GPOS (112) .
4. A method of controlling real time tasks (118) and general purpose tasks (116) , said method is capable of being implemented on a data processing system comprising a processor that executes a computer executable code and a storage medium for storing an operating system comprising a RT kernel (104) and a GPOS (112) characterized in that said method containing the following steps:
(a) choosing a real time task τp with the highest priority pfp from a subset {τf } of real time tasks that are ready to be run;
(b) choosing a general purpose task τ p with the highest priority P^ from a subset {τf } of general purpose tasks that are ready to be run;
(c) comparing said priority values Pfp and P p ;
(d) appointing a task with higher priority, of the tasks τfp and τ p to be the current task.
5. Method according to claim 4 wherein step (a) is executed when an event that requires rescheduling of tasks in said operating system has occurred.
6. A computer program product stored on a computer usable medium, comprising computer readable program means for causing a computer to perform all the steps of the method according to any one of the claims 4 to 5.
PCT/RU2003/000004 2003-01-14 2003-01-14 Operating system, method and computer program product for controlling a data processing system WO2004063926A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/RU2003/000004 WO2004063926A1 (en) 2003-01-14 2003-01-14 Operating system, method and computer program product for controlling a data processing system
AU2003225446A AU2003225446A1 (en) 2003-01-14 2003-01-14 Operating system, method and computer program product for controlling a data processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/RU2003/000004 WO2004063926A1 (en) 2003-01-14 2003-01-14 Operating system, method and computer program product for controlling a data processing system

Publications (1)

Publication Number Publication Date
WO2004063926A1 true WO2004063926A1 (en) 2004-07-29

Family

ID=32710014

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/RU2003/000004 WO2004063926A1 (en) 2003-01-14 2003-01-14 Operating system, method and computer program product for controlling a data processing system

Country Status (2)

Country Link
AU (1) AU2003225446A1 (en)
WO (1) WO2004063926A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100790304B1 (en) * 2006-11-10 2008-01-02 주식회사 대우일렉트로닉스 Method for executing of java virtual machine scheduling and operating system scheduling

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5721922A (en) * 1994-10-13 1998-02-24 Intel Corporation Embedding a real-time multi-tasking kernel in a non-real-time operating system
US5903752A (en) * 1994-10-13 1999-05-11 Intel Corporation Method and apparatus for embedding a real-time multi-tasking kernel in a non-real-time operating system
US5983310A (en) * 1997-02-13 1999-11-09 Novell, Inc. Pin management of accelerator for interpretive environments
US5995745A (en) * 1996-12-23 1999-11-30 Yodaiken; Victor J. Adding real-time support to general purpose operating systems
RU2182723C2 (en) * 2000-06-14 2002-05-20 Военный инженерно-космический университет им. А.Ф. Можайского Priority device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5721922A (en) * 1994-10-13 1998-02-24 Intel Corporation Embedding a real-time multi-tasking kernel in a non-real-time operating system
US5903752A (en) * 1994-10-13 1999-05-11 Intel Corporation Method and apparatus for embedding a real-time multi-tasking kernel in a non-real-time operating system
US5995745A (en) * 1996-12-23 1999-11-30 Yodaiken; Victor J. Adding real-time support to general purpose operating systems
US5983310A (en) * 1997-02-13 1999-11-09 Novell, Inc. Pin management of accelerator for interpretive environments
RU2182723C2 (en) * 2000-06-14 2002-05-20 Военный инженерно-космический университет им. А.Ф. Можайского Priority device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100790304B1 (en) * 2006-11-10 2008-01-02 주식회사 대우일렉트로닉스 Method for executing of java virtual machine scheduling and operating system scheduling

Also Published As

Publication number Publication date
AU2003225446A1 (en) 2004-08-10

Similar Documents

Publication Publication Date Title
EP2316091B1 (en) Protected mode scheduling of operations
Selic Turning clockwise: using UML in the real-time domain
US7971205B2 (en) Handling of user mode thread using no context switch attribute to designate near interrupt disabled priority status
US9582325B2 (en) Method for scheduling with deadline constraints, in particular in Linux, carried out in user space
JP2011192281A (en) Virtual machine monitor and scheduling method for the same
CA2429966A1 (en) Computer multi-tasking via virtual threading
GB2425628A (en) Programming distributed system using data flow diagrams
EP1031925B1 (en) Cooperative processing of tasks in multi-threaded computing system
Zeng et al. Mechanisms for guaranteeing data consistency and flow preservation in AUTOSAR software on multi-core platforms
Andreoli et al. Priority-driven differentiated performance for nosql database-as-a-service
WO2004063926A1 (en) Operating system, method and computer program product for controlling a data processing system
Nosrati et al. Task scheduling algorithms introduction
Walters et al. Enabling interactive jobs in virtualized data centers
Cooling et al. Task scheduler co-processor for hard real-time systems
Sun et al. Applying Rely-Guarantee Reasoning on Concurrent Memory Management and Mailbox in C/OS-II: A Case Study
Syuhada Multi-threading on Linux Operating System Using Scheduling Algorithm
Rao et al. A Research in Real Time Scheduling Policy for Embedded System Domain
Pon Pushpa et al. Optimum inter-release time analysis for non-preemptive periodic task set
Gupta et al. Operating system
Sarcar et al. Thread Programming
Van Every Multicore Xinu
Hunt Introduction to Concurrency and Parallelism
van der Sluys Operating systems (OPS) lecture notes
CN116360941A (en) Multi-core DSP-oriented parallel computing resource organization scheduling method and system
Gill Operating systems concepts

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SK SL TJ TM TN TR TT TZ UA UG US UZ VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP