• DocumentCode
    1382624
  • Title

    MDARTS: a multiprocessor database architecture for hard real-time systems

  • Author

    Lortz, Victor B. ; Shin, Kang G. ; Kim, Jinho

  • Author_Institution
    Intel Corp., Hillsboro, OR, USA
  • Volume
    12
  • Issue
    4
  • fYear
    2000
  • Firstpage
    621
  • Lastpage
    644
  • Abstract
    Complex real time systems need databases to support concurrent data access and provide well defined interfaces between software modules. However, conventional database systems and prior real time database systems do not provide the performance or predictability needed by high speed, hard real time applications. The authors designed, implemented, and evaluated an object oriented database system called MDARTS (Multiprocessor Database Architecture for Real Time Systems). MDARTS avoids the client server overhead of most prior real time database systems and object oriented, real time systems by moving transaction execution into application tasks. By eliminating these sources of overhead and focusing on basic data management services for control systems (data sharing, serializable transactions, and multiprocessor support), the MDARTS prototype provides hard real time transaction times approximately three orders of magnitude faster than prior real time database systems. MDARTS ensures bounded locking delay by disabling preemption when a transaction is waiting for a lock, and hence, allows for the estimation of worst case transaction execution times. Another contribution of MDARTS is that it supports explicit declarations of real time requirements and semantic constraints within application code. The MDARTS library examines these declarations at application initialization time and attempts to construct objects that are compatible with the requirements. Besides local shared memory transactions with hard real time response time guarantees, MDARTS also supports remote transactions that use remote procedure calls for data access with less stringent timing constraints. The MDARTS prototype is implemented in C++ and it runs on VME based multiprocessors and Sun workstations
  • Keywords
    bibliographies; multiprocessing systems; object-oriented databases; real-time systems; remote procedure calls; shared memory systems; transaction processing; C++; MDARTS; MDARTS library; Multiprocessor Database Architecture for Real Time Systems; Sun workstations; VME based multiprocessors; application code; application initialization; application tasks; basic data management services; bounded locking delay; client server overhead; complex real time systems; concurrent data access; control systems; conventional database systems; data access; data sharing; explicit declarations; hard real time applications; hard real time response time guarantees; hard real time systems; hard real time transaction times; local shared memory transactions; multiprocessor database architecture; multiprocessor support; object oriented database system; predictability; prior real time database systems; real time requirements; remote procedure calls; remote transactions; semantic constraints; serializable transactions; software modules; timing constraints; transaction execution; well defined interfaces; worst case transaction execution times; Application software; Computer architecture; Control systems; Database systems; Delay estimation; Libraries; Object oriented databases; Prototypes; Real time systems; Transaction databases;
  • fLanguage
    English
  • Journal_Title
    Knowledge and Data Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    1041-4347
  • Type

    jour

  • DOI
    10.1109/69.868911
  • Filename
    868911