Medical-device manufacturers understand the importance of the operating system (OS). In fact, contrary to common practice in the world of embedded systems, they often select the OS even before they choose the board. According to VDC Research, for example, in 2010, 36.4% of medical device projects chose the OS first, compared to 20.8% of telecommunications projects, and just 9.3% of transportation projects.
This anomaly underlines just how much medical devices depend on their OSs. It does not, however, help with OS selection, which is made more difficult thanks to constant innovation and development that combine to present a bewildering line-up of possibilities: Android, QNX Neutrino RTOS, myriad Linux flavors, Windows CE, and roll-your-own, to name just a few.
Of course, no serious engineer would formulate the question of OS selection as “which OS?” but rather, “what does the project need from its OS?” The answers to this question lead to a short list of viable candidates.
Though these answers will be unique to every project, we can make a few assumptions. The OS must support the project’s business requirements; it must support the device’s regulatory compliance requirements; and it
must possess whatever characteristics the device requires of it, starting with, in most cases, dependability.
This article looks at OS requirements; characteristics] general purpose OS or real time OS (RTOS); RTOS architectures; key RTOS characteristics; protection against priority inversions; partitions; monitoring,
stopping, and restarting processes. (For example, in Figure 1, we can see how the knotty problem of priority inversion is prevented by priority inheritance.)
To read the article, click here.
About the author:
Justin Moon is currently QNX Software Systems’ product manager for the medical market. Since joining the company ten years ago, he has worked on the Custom Engineering Team, specializing in BSP and driver development, and on the Automotive Team. Moon studied computer engineering at St. Lawrence College.