Font Size: a A A

Key Techniques Study For Complex Real-Time Application System Design And Implementation

Posted on:2013-03-31Degree:DoctorType:Dissertation
Country:ChinaCandidate:X B WangFull Text:PDF
GTID:1228330467482767Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
Successful design and implementation of complex real-time application system depends mainly on scheduling and resource management mechanisms of low later operating system. Key real-time tasks predicatable running supported by programming language is also critical. To scheduling problem, mixed dynamic prioity and supporting user level total band preservation scheduling alogorithm being considered the best approaches for hydird cheduling theoretically. But, nowadays, no real-time operating system realize these mechanisms, meanwhile, nomal Java platform also has no technique method to solve the problem of predictable running for key tasks. The thesis studies the above key techniques for supporting complex real-time application system design and implementation. On operating system aspect, a kind of hybrid scheduling stratey would be proposed for various types of hybrid tasks scheduling and mixed scheduling alogorithm as well as resource management protoaols will be designed and realized in open-code embedded real-time operating system. The new scheduling algorithms may achieve global optimization scheduling target by promoting soft real-time aperiodic tasks scheduling performance under prerequisite of satisfying deadline of hard real-time period tasks. On programming language aspect, real-time Java middleware component would be designed and implemented based on nomal Java platform and method for controlling gabage collection running will be given. The middleware component can make specific Java thread predicatability running and establishs a technical foundation for Java network soft real-time application.The thesis proposed a hybrid task integrated scheduling strategy based on server approach. Layered scheduling design idea and integrated scheduling frame are given. In the frame, operating system kernel dispatch application servers (EDF alogorithm being the best), different server which bingding corresponding real-time scheduling alogorithm support scheduling deifferent type of task. On concreate technique realization, firstly, dynamic prioity EDF algorithm is implemented in μC/OS-Ⅱ, which is a open-code static priority preemptive real-time operating system, by method of non-modified the kernel, and then, considering dual parameters of deadline and critical parameter, dynamic mixed priority scheduling alogorithm EDIF has been put forwarded to realize layered hybrid tasks scheduling. The critical parameter gives layered information, serve as distinguish hard real-time and soft real-time task. Model of EDIF are designed, schedulable condition has been theoretically analyzed. Acceptable scheduling concept is defined. EDIF alogorithm is realized in μC/OS-Ⅱ by extension of its kernel data structure and modifying kernel scheduler as well as relative kernel functions modification. A hybrid scheduling alogorithm based on proportional bandwidth server, named PDBS, is implemented in another open-code real-time operating system RTLinux. The design thought is that putting tasks in different ready queue according to task type, application server with definite capacity schedule corresponding queue, all servers share processor according to its dispatching proportional capacity. PDBS can reservate bandwidth for processing soft real-time tasks while hard real-time tasks heavy load, effectively prevent soft real-time tasks non-response long-term and its performance decreased dramatically. PDBS alogorithm is realized by extension of RTLinux kernel structure, modifying singal queue to hard real-time and soft real-time dual task queues. Various queues are dispatched processor time according to the proposed proportion bandwidth server capacity counting fomula, PDBS scheduler make proportional time slice round robin dispatching for hard real-time and soft real-time task queue. The thesis gives modification method of original scheduler, timer interruption processing function and some interface functions as well as relative processing function for realzing PDBS in RTLinux. μC/OS-I, which widely used in embedded industrial field, can not create same prioity task and also can bot realze prioity inhererent protocal in it. The thesis also modified μC/OS-Ⅱ kernel, implements priority driven/round robin layered scheduling alogorithm which supporting same priority task scheduling for hybird tsk set and realize all real-time design model to prevent priority invertion.On real-time middleware design aspect based on common Java platform, aiming at the problem of Java thread indetermination arousal when multithread waiting for access critical resource, a real-time component is designed to realize the threads being aweaken according to their priority. The components make sure for highest priority thread using critical resource preferentialy and improve Java real-time performance on common Java platform. Main thought and implement method is:creating new Java class whose priority extended by equal proportional mapped approach; and then, creating thread agent that having extended priority for each thread that accessing the critical resource; agent set class manage the critical resource, waiting threads aweaken to according to priority in the agent set. Meanwhile, Solutions for the live-lock of lower priority thread in the designed Java real-time component are given by adopting real-time scheduling algorithm of LRT to change priority dynamically. To problem of Java garbage collector (GC) uncertain start-up which affect thread real-time running, a solution scheme that periodic upgrading priority of GC and making GC scheduling running before it block all threads are given. The approach is:divide priority into critical threads and non-critical threads according to importance of thread; give calaculation formula of GC period upper limit Tgc according to virtual machine memory never achieve saturation degree; raise priority of Gc to maximum of non-critical thread within time of Tgc. In this way, GC run after critical thread has finished, can not affect critical thread running, Java critical thread predictable running can be achieved.Theroritical analysis and verification results show that EDIF alogorithm in the new μC/OS-Ⅱ kernal is correct and effective, while system exceed capacity of processor, EDIF alogorithm satisfy deadline of all hard real-time critical tasks, meanwhile, soft real-time tasks not be given up but postpone running, soft real-time non-critical tasks completion rate improved dramatically, global mixed scheduling performance is excellent; PDBS alogorithm in the new RTLinux kernal solve the problem of soft real-time tasks scheduling performance effectively improved in hybrid task set scheduling; real-time Java real-time middleware components can create Java thread that aweaken based on priority, thread running can be predicted, meanwhile, the given priority equal proportional mapping method enlarge prioity range, JVM can schedule more threads based on definite priority effectively, by introduced dynamic priority modification algorithm in real-time system, lower priority live-lock problem is solved effectively; periodic upgrading priority of GC to maximum of non-critical threads within Tgc eliminate unpredict running delay to critical threads.It is concluded that:implementation EDIF and PDBS alogorithm in specific open-code operating system prove validation of hybrid task intergrated scheduling strategy and frame; can provide low level technique support for sucsessful design and implementation of complex real-time application system based onμC/OS-Ⅱ and RTLinux; Java real-time middleware lay a technical foundation for network Java soft real-time application.
Keywords/Search Tags:Hybird scheduling alogorithm, server, deadline, predictability, dynamicpriority, Java real-time middleware, multi-thread, notifacation mechanism, garbagecollector
PDF Full Text Request
Related items