Digitala Vetenskapliga Arkivet

Change search
Refine search result
1 - 7 of 7
CiteExportLink to result list
Permanent link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Rows per page
  • 5
  • 10
  • 20
  • 50
  • 100
  • 250
Sort
  • Standard (Relevance)
  • Author A-Ö
  • Author Ö-A
  • Title A-Ö
  • Title Ö-A
  • Publication type A-Ö
  • Publication type Ö-A
  • Issued (Oldest first)
  • Issued (Newest first)
  • Created (Oldest first)
  • Created (Newest first)
  • Last updated (Oldest first)
  • Last updated (Newest first)
  • Disputation date (earliest first)
  • Disputation date (latest first)
  • Standard (Relevance)
  • Author A-Ö
  • Author Ö-A
  • Title A-Ö
  • Title Ö-A
  • Publication type A-Ö
  • Publication type Ö-A
  • Issued (Oldest first)
  • Issued (Newest first)
  • Created (Oldest first)
  • Created (Newest first)
  • Last updated (Oldest first)
  • Last updated (Newest first)
  • Disputation date (earliest first)
  • Disputation date (latest first)
Select
The maximal number of hits you can export is 250. When you want to export more records please use the Create feeds function.
  • 1.
    Kero, Martin
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering, Computer Science.
    Garbage collecting reactive real-time systems2007Licentiate thesis, comprehensive summary (Other academic)
    Abstract [en]

    As real-time systems become more complex, the need for more sophisticated runtime kernel features arises. One such feature that substantially lessens the burden of the programmer is automatic memory management, or garbage collection. However, incorporating garbage collection in a real-time kernel is not an easy task. One needs to guarantee, not only that sufficient memory will be reclaimed in order to avoid out of memory errors, but also that the timing properties of the systems real-time tasks are unaffected. The first step towards such a garbage collector is to define the algorithm in a manageable way. It has to be made incremental in such way that induced pause times are small and bounded (preferably constant). The algorithm should not only be correct, but also provably useful. That is, in order to guarantee that sufficient memory is reclaimed each time the garbage collector is invoked, one need to define some measure of usefulness. Furthermore, the garbage collector must also be guaranteed to be schedulable in the system. That is, even though the collector is correct and proved useful, it still has to be able to do its work within the system. In this thesis, we present a model of an incremental copying garbage collector based on process terms in a labeled transition system. Each kind of garbage collector step is captured as an internal transition and each kind of external heap access (read, write, and allocate) is captured as a labeled transition. We prove correctness and usefulness of the algorithm. We also deploy the garbage collector in a real-time system, to wit, the runtime kernel of Timber. Timber is a strongly typed, object-oriented, purely reactive, real-time programming language based on reactive objects. We show how properties of the language can be used in order to accomplish very efficient and predictable garbage collection.

    Download full text (pdf)
    FULLTEXT01
  • 2.
    Kero, Martin
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering, Computer Science.
    Garbage collection for reactive real-time systems2010Doctoral thesis, comprehensive summary (Other academic)
    Abstract [en]

    Predictable use of resources, such as processor time and memory, is a desirable property for virtually any computer system. In real-time computing, static predictability is of particular concern. A real-time system typically maintains an ongoing interaction with its environment, concurrently executing tasks at predefined intervals or as responses to sporadic external events. Its purpose is often safety-critical, where failures to meet deadlines may have severe consequences - even loss of life. The substantial body of research in real-time scheduling theory has demonstrated that a priori guarantees on schedulability are achievable. What is needed is some carefully chosen restrictions on how tasks may interact and what timing behavior external events may exhibit. Safe use of shared resources in real-time systems are enabled by protocols for preserving mutually exclusive access to critical sections, free of deadlocks and priority inversions. The ability to achieve a priori schedulability guarantees can be preserved by taking the imposed restrictions into account. Nonetheless, allowing real-time tasks to share heap allocated data has far more complex consequences than just being a schedulability issue concerning shared resources. In order to guarantee failure free operation, the system must be free of memory related errors, such as memory leaks and dangling pointers. It is well-known that garbage collection can solve these problems. However, incorporating a garbage collector in a real-time system imposes a set of other requirements related to schedulability. This includes provably safe upper-bounds on required execution time and memory of the garbage collector in the presence of concurrently executing tasks, as well as preserved ability to achieve static schedulability guarantees of the real-time tasks. The body of research work towards establishing a priori schedulability guarantees of garbage collected real-time systems has been growing for the past decade. However, most of the existing work lacks a clear identification of the parameters required for and their impact on establishing a provably safe upper-bound on garbage collection execution time. The lack thereof has often imposed overly simplistic models for the cost of garbage collection; and - probably even more alarming - tractability of finding safe bounds of the involved parameters has not been established. Furthermore, most existing approaches require specialized scheduling policies and schedulability tests, as well as intrusive restrictions on the task model.In this dissertation, we propose the following theses: (1) the key to successful realtime garbage collection is to preserve as much as possible of previous advances in realtime scheduling theory by imposing minimal restrictions on the task model, scheduler, and schedulability test; and (2) the keys to enabling a priori schedulability guarantees are clear identification and tractable analysis of the sources of execution time for the garbage collector. Proofs of our theses are based on the run-time behavior of the real-time programming language Timber and an incremental copying garbage collector running as the lowest priority (idle) process.We identify all parameters needed for establishing a safe and tight upper bound on execution time of our collector, where the major ones (not surprisingly for a copying collector) are related to the amount of live heap space. We present a novel technique for establishing safe upper bounds of live heap space parameters for real-time systems. We rely on existing techniques for finding safe upper-bounds of parameters related to heap allocation of each task. Finally, we present the garbage collection demand analysis, decoupled from the schedulability analysis used for the real-time tasks, which determines if our collector is schedulable in the system.

    Download full text (pdf)
    FULLTEXT01
  • 3.
    Kero, Martin
    et al.
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering.
    Aittamaa, Simon
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering, Embedded Internet Systems Lab.
    Scheduling garbage collection in realtime systems2010In: CODES/ISSS '10 Proceedings of the eighth IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis, New York, NY: ACM Digital Library, 2010, p. 51-60Conference paper (Refereed)
    Abstract [en]

    The key to successful deployment of garbage collection in real-time systems is to enable provably safe schedulability tests of the real-time tasks. At the same time one must be able to determine the total heap usage of the system. Schedulability tests typically require a uniformed model of timing assumptions (inter-arrival times, deadlines, etc.). Incorporating the cost of garbage collection in such tests typically requires both artificial timing assumptions of the garbage collector and restricted capabilities of the task scheduler. In this paper, we pursue a different approach. We show how the reactive object model of the programming language Timber enables us to decouple the cost of a concurrently running copying garbage collector from the schedulability of the real-time tasks. I.e., we enable any regular schedulability analysis without the need of incorporating the cost of an interfering garbage collector. We present the garbage collection demand analysis, which determines if the garbage collector can be feasibly scheduled in the system.

    Download full text (pdf)
    FULLTEXT01
  • 4. Kero, Martin
    et al.
    Lindgren, Per
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering, Embedded Internet Systems Lab.
    Nordlander, Johan
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering, Computer Science.
    Timber as an RTOS for small embedded devices2005In: PREALWSN 2005: proceedings of the First Workshop on Real-World Wireless Sensor Network : Stockholm, Sweden, 20-21 June 2005, Kista: Swedish Institute of Computer Science , 2005Conference paper (Refereed)
    Abstract [en]

    Software development for small, real-time and resource constrained, embedded systems is becoming increasingly complex. To be able to guarantee robustness and reliability, the underlying infrastructure should not be based upon ad hoc solutions. In this paper we identify three key features of a minimalistic Real-Time Operating System (RTOS), and presents the run-time system of Timber, a reactive deadlinedriven programming language. We scrutinize the functionalities of the run-time system in the light of real-time requirements, and emphasize the importance of integrating an adequate notion of time, both semantically in the programming interface as well as part of the run-time system.

    Download full text (pdf)
    FULLTEXT01
  • 5.
    Kero, Martin
    et al.
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering.
    Nordlander, Johan
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering, Computer Science.
    Lindgren, Per
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering, Embedded Internet Systems Lab.
    A correct and useful incremental copying garbage collector2007In: Proceedings of the the 2007 International Symposium on Memory Management: Québec, Canada, October 21 - 22, 2007, New York: ACM Digital Library, 2007, p. 129-140Conference paper (Refereed)
    Abstract [en]

    Designing a garbage collector with real-time properties is a particularly difficult task, involving the construction of both an incremental run-time algorithm as well as methods enabling a priori reasoning about schedulability in two dimensions (time and memory usage in conjunction). In order to comply with such ambitious goals with any amount of formal rigor, a comprehensive understanding of the actual algorithm used is of course a fundamental requirement. In this paper we present a formal model of an incremental copying garbage collector, where each atomic increment is modeled as a transition between states of a heap process. Soundness of the algorithm is shown by proving that the garbage collecting heap process is weakly bisimilar to a non-collecting heap with infinite storage space. In addition, we show that our collector is both terminating and useful, in the sense that it actually recovers the unreachable parts of any given heap in a finite number of steps.

    Download full text (pdf)
    FULLTEXT01
  • 6.
    Kero, Martin
    et al.
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering, Embedded Internet Systems Lab.
    Pietrzak, Pawel
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering, Embedded Internet Systems Lab.
    Nordlander, Johan
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering, Computer Science.
    Live heap space bounds for real-time systems2010In: Programming languages and systems: 8th Asian symposium, APLAS 2010, Shanghai, China, November28 - December 1 2010 : proceedings, Berlin: Encyclopedia of Global Archaeology/Springer Verlag, 2010, p. 287-303Conference paper (Refereed)
    Abstract [en]

    Live heap space analyses have so far been concerned with the standard sequential programming model. However, that model is not very well suited for embedded real-time systems, where fragments of code execute concurrently and in orders determined by periodic and sporadic events. Schedulability analysis has shown that the programming model of real-time systems is not fundamentally in conflict with static predictability, but in contrast to accumulative properties like time, live heap space usage exhibits a very state-dependent behavior that renders direct application of schedulability analysis techniques unsuitable.

    In this paper we propose an analysis of live heap space upper bounds for real-time systems based on an accurate prediction of task execution orders. The key component of our analysis is the construction of a non-deterministic finite state machine capturing all task executions that are legal under given timing assumptions. By adding heap usage information inferred for each sequential task, our analysis finds an upper bound on the inter-task heap demands as the solution to an integer linear programming problem. Values so obtained are suitable inputs to other analyses depending on the size of a system’s persistent state, such as running time prediction for a concurrent tracing garbage collector.

    Download full text (pdf)
    fulltext
  • 7.
    Lindgren, Per
    et al.
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering, Embedded Internet Systems Lab.
    Nordlander, Johan
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering, Computer Science.
    Kero, Martin
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering.
    Eriksson, Johan
    Luleå University of Technology, Department of Computer Science, Electrical and Space Engineering, Embedded Internet Systems Lab.
    Robust real-time applications in Timber2006In: 2006 IEEE International Conference on Electro/information Technology: East Lansing. MI, 7 - 10 May 2006, Piscataway, NJ: IEEE Communications Society, 2006, p. 191-196Conference paper (Refereed)
    Abstract [en]

    Embedded systems are often operating under hard real-time constraints, for example in automotive applications. For such systems, robustness and reliability are crucial, which calls for rigorous system design and methodologies for validation. In this paper we advocate a design methodology for robust, realtime systems, based on Timber; a pure reactive system model that allows for formal reasoning about various system properties. We outline how system specifications in Timber can be "compiled" into efficient standalone executables for general light-weight microcontroller platforms. Methods for resource analysis and implications to system dimensioning and validation are further discussed.

    Download full text (pdf)
    FULLTEXT01
1 - 7 of 7
CiteExportLink to result list
Permanent link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf