Today’s medical devices are more capable than ever. But with those capabilities comes complexity – which in turn makes developing these devices more challenging. Creating a future-proof medical device solution, from CT scanning machines to patient-monitoring equipment, requires building on a platform that can accommodate not only stringent compliance requirements, but also support robust security and real-time capabilities.
This is essential since medical devices often require safety-critical capabilities, such as those needed for heart resuscitation or accurate drug infusions. In addition, an appropriate platform must offer the flexibility to allow developers to customize features essential to an elevated user experience.
According to a recent survey of medical device manufacturers by JBF Research, 50% of respondents are considering transitioning their embedded software product from proprietary solutions like Windows to Linux. The growing popularity of Linux in the medical device market is little surprise since it is already widely used in everything from desktop systems to supercomputers.
If you’re thinking about making the move to Linux for your medical device, here’s a look at some pros and cons.
Pros of Embedded Linux OS
As an open-source solution, there are no license fees. That means using Linux enables developers to create customized – and safe – products at a lower cost than what’s possible using proprietary platforms like Windows. Software maintenance is also less expensive thanks to Linux’s large and active developer community, which can offer professional assistance to support the product. Under Linux’s General Public License device manufacturers can access a variety of services, updates, and security patches at no cost.
Linux provides a high level of cybersecurity and is malware-resistant thanks to its development process. And when security issues do arise, Linux’s community responds quickly to identify and address any problems.
Linux accommodates healthcare regulation, allowing manufacturers to create compliant products that meet relevant standards, including IEC 62304 and FDA requirements. (Yes, there are some disadvantages around compliance when using Linux, which we’ll address in a moment.)
While Linux is capable of doing soft real-time processing, the typical choice is to handle real-time processing with microcontrollers. Fortunately, Linux is the ideal platform to interact with them, not only at the data level but also when changing their firmware.
Linux makes it much easier than Windows and other proprietary platforms to customize the UI or desktop. Developers can utilize Linux’s pre-existing designs or easily tailor their own design, adding features or modifying code to suit a manufacturer’s specific needs. Linux users can also take advantage of The Yocto Project, which offers a variety of open-source tools for customizing Linux builds.
Linux can be used for a wide variety of medical devices, from small, single-user measuring devices to sophisticated MRIs – and everything in between. And Linux can run on a range of CPUs, such as ARM or MIPS, which means it’s easy to port software in the event you want to move to new hardware.
Cons of Embedded Linux
Linux sounds great, right? But there are a few drawbacks worth mentioning. The key disadvantage relates to compliance. Medical devices must comply with the requirements of IEC 62304, which mandates a development plan with established quality, safety and risk management systems. Additional documentation relating to cybersecurity control is also required.
Proprietary software vendors like Microsoft (Windows) can provide a well-documented product without breaking a sweat. But since Linux is a SOUP – Software of Unknown Provenance – a device manufacturer using this solution has to jump through a few extra hoops to prove the software meets IEC 62304.
Essentially, SOUP is widely available software that lacks the standard-required quality assessments processes. (Note that this does not mean it lacks quality processes in general.) Manufacturers that use a SOUP like Linux must themselves define all aspects of software requirements, architecture, risk analysis, testing, cybersecurity and maintenance. They must well-document each phase of the development process, validate the SOUP, and stay abreast of software updates and patches.
If you don’t want to deal with these issues there are other solutions, like hiring a third-party company dedicated to keeping your operative system up-to-date with the latest security patches. This company – think Balena, Toradex etc. – can also provide device fleet management services, if desired.
Or you could use a proprietary solution like QNX® OS for Medical, a RTOS pre-certified to IEC 62304 and supported by a variety of development tools, services and feature-rich middleware. QNX® OS for Medical has been assessed by auditing body TÜV Rheinland, which means device manufacturers don’t have to worry about extra documentation burdens around SOUP. But, like with Windows, the drawback of QNX is cost as this is a proprietary product rather than an open-source solution.
Back to Linux. There are a few other disadvantages worth mentioning, among them the learning curve for developers to become more familiar with Linux. Also, the lack of Linux driver support for some hardware. (Luckily this is nowadays more an exception rather than the norm.)
And if you’re migrating existing code to Linux from another platform, you may also have to port or rewrite UX code if the UI toolkit is not cross-platform; and port or rewrite business code if the application uses external services or functions.
If you’re looking to move your medical devices to a cost-effective, reliable and feature-rich OS, Linux is a solid choice despite its drawbacks. Linux provides strong security, proven reliability, and the ability to work with sensitive patient data – all necessary elements of a solution aimed at 24/7/365 safety-critical embedded systems. And a commercial Linux distribution encompasses the necessary documentation and support, which alleviates much of the development and certification burden related to using a SOUP.
If you’d like to discuss your particular situation in detail with one of our experts, get in touch. ICS offers real-time support, including helping you choose the right System on Module/board for your device, determine an appropriate OTA update strategy, and set up continuous integration.