助力醫療設備向多核設計轉移的操作系統特點(diǎn)
醫療設備制造商在將產(chǎn)品推向市場(chǎng)所面臨的諸多挑戰中,獲得監管部門(mén)的批準是必過(guò)一關(guān),只有獲得相應核準,制造商才能出售其設備。為此,許多醫療設備制造商在采用多核系統設計時(shí)倍加小心,他們擔心多核的復雜性會(huì )妨礙其產(chǎn)品順利通過(guò)監管機構的審核。
本文引用地址:http://dyxdggzs.com/article/199483.htm的確,多核處理使軟件系統更趨復雜。但是無(wú)論系統運行在一個(gè)、兩個(gè)或16個(gè)處理器之上,當今的系統都已太過(guò)復雜,以致無(wú)法通過(guò)單獨測試來(lái)進(jìn)行驗證。因此,設備制造商應該熟悉針對多核系統開(kāi)發(fā)他們所需的驗證技術(shù)。
本文討論基于多核處理器的醫療設備系統的安全要求驗證問(wèn)題,并分析可助力醫療設備向多核設計轉移的操作系統具有哪些特點(diǎn)。
醫療設備對日益復雜的用戶(hù)界面和高清成像(兩者都對計算能力有巨大需求)等特性的需求不斷攀升,這使得對多核處理的需求水漲船高。即便醫療系統支持越來(lái)越豐富的先進(jìn)功能,它們通常也還必須滿(mǎn)足輕便、低功耗和低發(fā)熱的要求。
單核難以滿(mǎn)足上述這些要求,因為通過(guò)增加處理器時(shí)鐘速率提升計算能力的方法存在三個(gè)局限性。首先,功耗和發(fā)熱的增加速度快于時(shí)鐘速率的提升速度。其次,存儲器的速度跟不上處理器的速度。最后,資源、控制和數據間的依賴(lài)關(guān)系限制了單指令流所允許的并行程度。
關(guān)鍵的操作系統要求
對可靠性和可用性都是必要條件的醫療設備來(lái)說(shuō),可能會(huì )需要實(shí)時(shí)操作系統(RTOS),而這種RTOS需要支持對稱(chēng)多處理。推薦使用一款可將進(jìn)程分配給多個(gè)內核處理的單一操作系統,因為這種方法會(huì )比支持異步處理、且在每個(gè)處理器上采用不同操作系統,甚至是在不同核上采用不同操作系統等情況更容易。
選定的RTOS必須能防范由系統引發(fā)的故障,而且必須在出現故障時(shí)能夠重啟相應組件。在大多數情況下,最優(yōu)選擇是一個(gè)微核架構。其中,應用、設備驅程、文件系統和網(wǎng)絡(luò )協(xié)議棧都駐留在核外的獨立地址空間,因而它們彼此之間,以及它們與核之間都是隔離的。
多核系統存在大量的進(jìn)程和線(xiàn)程,因此具有軟件看門(mén)狗至關(guān)重要??撮T(mén)狗是一個(gè)用戶(hù)空間的故障恢復過(guò)程,它可以檢測出故障,并立即將系統恢復到安全狀態(tài),或在不犧牲安全性的前提下,重啟失敗的進(jìn)程。
為確保系統的可靠性,RTOS還應支持:1. 時(shí)間分割(最好自適應),以確保關(guān)鍵流程不會(huì )因CPU周期不夠用而無(wú)法完成;2. 優(yōu)先級繼承,以防止優(yōu)先級倒置;3. 處理器親和性,它允許設計師將特定的父進(jìn)程和子進(jìn)程僅指派給特定內核。
設計者可以確切地決定他們要如何使用系統內可用的多個(gè)核。例如,他們可將非關(guān)鍵的、但計算密集的進(jìn)程交由任何可用的內核處理,或是僅分配給一個(gè)有限的內核子集,同時(shí)將關(guān)鍵部分交由一個(gè)固定核處理,從而簡(jiǎn)化設計、調試和驗證。
開(kāi)發(fā)工具
開(kāi)發(fā)人員需要為支持多核開(kāi)發(fā)、調試和優(yōu)化而專(zhuān)門(mén)設計的工具。一個(gè)工具集應支持多核RTOS,該RTOS允許開(kāi)發(fā)者評估負載平衡、識別瓶頸、確定并發(fā)可能性、表征和調試運行于多個(gè)CPU上的線(xiàn)程間的相互作用;在內核間移動(dòng)線(xiàn)程或進(jìn)程,并測度其對系統造成的影響。時(shí)序和阻塞是棘手的問(wèn)題,所以工具集應為設計師提供一種探究處理器和線(xiàn)程正在做什么的手段。
滿(mǎn)足認證要求
符合要求是醫療設備準入市場(chǎng)的必要條件——是投資可以轉化成收入前必須滿(mǎn)足的必要條件。因此,除了合適的OS特性和工具集功能外,醫療設備需要一個(gè)精心策劃的審批策略。
多核系統的復雜性可能會(huì )妨礙最終產(chǎn)品的認證,因而一些醫療制造商對采用多核處理猶豫不決。但值得注意的是,單核系統也存在固有的復雜性,這意味著(zhù),在實(shí)踐中,即便是單核系統也不可能僅借助測試就可對其進(jìn)行驗證。多核和單核系統都是如此復雜,要展示它們的功能安全就需要技術(shù)組合,相同的技術(shù)能夠且應該同時(shí)用于驗證單核和多核系統。
為驗證軟件系統,無(wú)論其是運行在單核或多核之上,測試、統計分析和設計驗證要互為補充、統籌考慮。對于經(jīng)歷過(guò)系統通過(guò)認證或批準過(guò)程的人來(lái)說(shuō),他們應該熟知所需的必要技術(shù)。這些技術(shù)包括:
測試。雖然測試只能證明缺陷的存在,而無(wú)法證明不存在缺陷,但在任何系統驗證策略中,測試仍是關(guān)鍵要素。
統計分析。對于現場(chǎng)用過(guò)的設備或部件的使用數據,統計分析可被用作支持可靠性要求。在驗證時(shí),它也可與故障注入一起使用,用以評估系統中殘留的故障。
故障樹(shù)分析。以潛在或實(shí)際的故障開(kāi)始,故障樹(shù)分析可用于推斷出可能的故障原因。
設計驗證。通過(guò)在開(kāi)發(fā)過(guò)程中應用并借助Spin和NuSMV等工具進(jìn)行回顧性分析,設計驗證可為系統的可靠性聲明提供強有力的證據支持。
設計構件。一個(gè)具有所有相關(guān)設計構件(從項目計劃到可追溯性矩陣)的成熟軟件生命周期,是任何認證案例的標準及必要組成部分。
除了最簡(jiǎn)單的醫療設備之外,多核處理很可能是未來(lái)醫療設備的發(fā)展方向。仔細選擇操作系統,尤其要關(guān)注體系結構、處理器對線(xiàn)程親和性的支持以及工具集,可以減輕這些挑戰對系統設計、開(kāi)發(fā)和驗證的影響。
圖1.隨著(zhù)設備對計算能力要求的不斷增長(cháng),甚至一款相對小型的醫療設備可能也會(huì )受益于多核處理技術(shù)。
圖2.使用四核CPU的一種系統概述屏幕截圖。
圖3、測試、統計分析和設計驗證互為補充以共同驗證軟件系統,無(wú)論它是運行在單核或多核上。
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)助聽(tīng)器原理相關(guān)文章:助聽(tīng)器原理
評論