[HN Gopher] RTEMS: Open-source real time operating system
       ___________________________________________________________________
        
       RTEMS: Open-source real time operating system
        
       Author : BSDobelix
       Score  : 32 points
       Date   : 2024-11-11 09:59 UTC (2 days ago)
        
 (HTM) web link (www.rtems.org)
 (TXT) w3m dump (www.rtems.org)
        
       | kamaitachi wrote:
       | This takes me back to the mid 1990's. Glad to see it's still
       | going.
       | 
       | Back then, I worked on porting it to some proprietary hardware.
       | Was definitely an adventure!
       | 
       | I'd previously ported pSOS to a proprietary 68k board (different
       | company) and that was a walk in the park by comparison.
        
       | dang wrote:
       | Related. Others?
       | 
       |  _RTEMS Real Time Operating System_ -
       | https://news.ycombinator.com/item?id=32327518 - Aug 2022 (48
       | comments)
       | 
       |  _Thoughts on Supporting Rump Kernels on RTEMS_ -
       | https://news.ycombinator.com/item?id=9086016 - Feb 2015 (1
       | comment)
        
       | itslennysfault wrote:
       | Could anyone here provide me a TLDR of why a real time OS is
       | beneficial and specifically when/where it would be needed or most
       | beneficial?
        
         | pbrowne011 wrote:
         | In embedded systems with hard real-time requirements, there are
         | several ways to schedule tasks. Once the number of tasks you
         | need to execute grows long enough, scheduling becomes a
         | challenge. An RTOS is one way to manage these tasks with
         | guaranteed, deterministic timing.
         | 
         | A concrete example: if you're in a car (an embedded system
         | doing many things at once) and press the brakes, you want the
         | car to be as responsive as possible. A real-time operating
         | system will sacrifice other features of a general purpose OS to
         | guarantee that the brakes are applied within a specified time
         | interval after you press them.
         | 
         | Also, there are responses to a similar comment from when this
         | was previously posted:
         | https://news.ycombinator.com/item?id=32329499
        
         | kev009 wrote:
         | There are a lot of systems that rely on precise timing, for
         | instance clock generation/recovery, or opening/changing/closing
         | a control valve in some process. It has to be precise or you
         | lose sync in the first case or legitimate catastrophes can
         | happen in the second.
         | 
         | A realtime OS makes some guarantees about the timeliness of
         | things like interrupt service routines, and that necessarily
         | excludes unbounded and unknown workloads from getting in the
         | way -- something that every general purpose or soft realtime OS
         | struggles with as the lack of determinism can improve
         | throughput and scalability.
        
         | inkyoto wrote:
         | One of main differences between a traditional multiprocessing
         | operating system and a real time one is that in the latter each
         | process gets a fixed time slot to run and the kernel provides a
         | guarantee that the process will be preempted no matter what.
         | This gives every process running under the supervision of a
         | real-time kernel a chance to do something useful.
         | 
         | Whereas in non-RT systems, a process may <<overstay the
         | welcome>>, and the time slot it has been allotted may lengthen
         | (e.g. due to a computationally intensive unit of work or a
         | blocking I/O operation) at the expense of other processes
         | waiting in the scheduler run queue.
         | 
         | So non-RT kernels operate on the best effort basis (<<I will
         | try my best to ensure each time slot has the same duration>>)
         | vs guaranteed preemption in RT kernels (<<I hereby underwrite a
         | guarantee that each time slot has the same duration and pledge
         | that offending squatters will be evicted>>).
         | 
         | Other than an example with the car, real-time processing is
         | important in the audio engineering or processing where an audio
         | stream will stutter in a non-RT operating system. There are
         | other similar scenarios as well.
        
       | ebruchez wrote:
       | I ported RTEMS on a 68k family microcontroller in 1997 for my
       | computer science thesis, as part of a larger project. It was
       | quite easy to work with, as I remember.
        
       | kev009 wrote:
       | Seems like the new website is why this is getting posted now.
       | 
       | One thing I like about RTEMS is the BSD affinity,
       | https://gitlab.rtems.org/rtems/pkg/rtems-libbsd it seems like a
       | pragmatic way to get some of the desired features.
        
       ___________________________________________________________________
       (page generated 2024-11-13 23:01 UTC)