相關美國專利申請的交叉引用
本申請要求于2014年12月27日提交的序列號為14/583,705的、題為“technologiesformanagingdevicefunctionsofaningestiblecomputingdevice(用于管理可攝入計算設備的設備功能的技術)”的美國發明專利申請的優先權。
背景技術:
可攝入計算設備通常是能夠被吞咽、被植入或以其他方式被攝入到用戶中的小型化計算設備。可攝入計算設備可以被實現為各種類型的設備,包括數字藥丸、智能植入物、人造器官、其他生物組件。可攝入計算設備通常包括一個或多個傳感器,用于檢測用戶的內部環境的各個方面。
可攝入計算設備通常被制造來執行特定功能,例如,感測用戶的生物機能、或檢測藥物的功效。然而,根據可攝入計算設備、被編程的功能、和/或用戶的狀況,可攝入計算設備的被編程的功能可能變得過時或不合需要。在這種情況下,可攝入計算設備被從用戶中移除。例如,一些可攝入計算設備被設計為僅在一定時間段內操作,例如,通過用戶的胃腸道所需的時間。由于典型的可攝入計算設備的被編程的功能的靜態特性以及用戶的身體將可攝入計算設備包圍,重新利用可攝入計算設備通常是相當困難或不可能的。
附圖說明
本文所描述的概念通過示例的方式而不是限制的方式在附圖中進行了說明。為了說明的簡單和清楚,附圖中所示出的元件不一定按比例繪制。在適當的情況下,在附圖中重復使用參考標簽以表示相應的或相似的元件。
圖1是可攝入計算設備的至少一個實施例的簡化框圖;
圖2是可以由圖1的可攝入計算設備建立的環境的至少一個實施例的簡化框圖;
圖3是用于初始化圖1和圖2的可攝入計算設備的設備功能的方法的至少一個實施例的簡化框圖;
圖4是用于調整可以由圖1和圖2的可攝入計算設備執行的設備功能的方法的至少一個實施例的簡化框圖;以及
圖5是用于更新可以由圖1和圖2的可攝入計算設備執行的設備功能的方法的至少一個實施例的簡化框圖。
具體實施方式
雖然本公開的概念允許各種修改和替代形式,但是其具體實施例已經通過示例的方式在附圖中示出,并且將在本文中進行詳細描述。然而,應當理解,不旨在將本公開的概念限制為所公開的特定形式,相反,本發明旨在涵蓋與本公開和所附權利要求一致的所有修改、等同和替代方案。
說明書中對“一個實施例”、“實施例”、“說明性實施例”等等的引用表明,所描述的實施例可以包括特定的特征、結構或特性,但是每個實施例可以包括或不一定包括該特定的特征、結構或特性。此外,這類短語不一定指相同的實施例。此外,當結合實施例描述特定特征、結構或特性時,應當認為結合其他實施例來實現這種特征、結構或特性在本領域技術人員的知識范圍內,無論是否明確地描述。此外,應當理解,列表中以“至少一個a、b和c”的形式包括的項目可以指(a)、(b)、(c)、(a和b)、(b和c)、(a和c)、或(a、b和c)。類似地,以“a、b或c中的至少一個”的形式列出的項目可以是(a)、(b)、(c)、(a和b)、(b和c)、(a或c)、或(a、b和c)。
在一些情況下,所公開的實施例可以在硬件、固件、軟件或它們的任意組合中被實現。所公開的實施例還可以被實現為由一個或多個暫態或非暫態機器可讀(例如,計算機可讀)存儲介質承載的或存儲的指令,其可由一個或多個處理器讀取和執行。機器可讀存儲介質可以被實現為用于以機器可讀的形式存儲或發送信息的任意存儲設備、機制或其他物理結構(例如,易失性或非易失性存儲器、介質盤、或其他介質設備)。
在附圖中,一些結構特征或方法特征可以以具體布置和/或順序被示出。然而,應當理解,可以不要求這種具體布置和/或順序。相反,在一些實施例中,這些特征可以以與說明性附圖中所示出的不同的方式和/或順序被布置。此外,在特定附圖中包括結構特征或方法特征并不意味著在所有實施例中都需要這樣的特征,并且在一些實施例中可以不包括這些特征,或者可以將這些特征與其他特征組合。
現在參考圖1,示出了說明性可攝入計算設備100。可攝入計算設備100可以被實現為能夠被攝入到用戶的身體中的任意類型的計算設備。例如,可攝入計算設備可以被配置為被吞咽、被注射、被手術植入、或以其他方式被放置在用戶的身體中。在使用中,可攝入計算設備100被配置為在位于用戶的身體中時執行一個或多個設備功能。由可攝入計算設備100執行的特定功能可以基于可攝入計算設備100的原始目的來確定。例如,可攝入計算設備100的初始設備功能可以是:感測用戶的身體的生物刺激,響應用戶的身體的生物刺激,感測藥物在用戶的身體內的功效,將激素釋放到用戶的身體中,在用戶的身體內產生基因序列,記錄患者的身體的生物刺激,基于感測到的數據來生成警報,和/或執行由可攝入計算設備通常執行的任意其它功能。或者,在一些實施例中,可攝入計算設備100可以被配置為初始不執行設備功能。
不考慮初始設備功能,可攝入計算設備100被配置為監測指示用戶的生物特性的傳感器數據,并且基于感測到的生物特性來調整其初始(或后續)功能。應當理解,這樣的功能調整就地發生。也就是說,可攝入計算設備100被配置為在不從用戶的身體移除的情況下調整或重新編程其功能。
如下面更詳細地討論的,可攝入計算設備100被配置為:通過從功能數據庫中選擇功能來調整其設備功能,獲得程序代碼模塊以實現新功能,以及使用程序代碼模塊來生成可執行代碼。例如,可攝入計算設備100可以使用即時編譯器來編譯程序代碼模塊。可攝入計算設備100隨后可以執行可執行代碼從而開始執行新功能。
可攝入計算設備100可以被實現為能夠執行本文所描述的功能的任意類型的可攝入計算設備。例如,可攝入計算設備100可以被實現為智能藥丸、智能植入物、人造器官、或能夠被攝入或被植入到用戶中的其他計算設備。如圖1所示,在一些實施例中,說明性可攝入計算設備100包括處理器110、i/o子系統112、存儲器114、數據存儲裝置116、安全引擎118、電源120、一個或多個傳感器130、一個或多個輸出設備140、和通信電路150。當然,在其他實施例中,可攝入計算設備100可以包括其他或附加組件,例如,通常存在于可攝入設備中的組件。此外,在一些實施例中,說明性組件中的一個或多個可以被并入另一組件,或以其他方式形成另一組件的一部分。例如,在一些實施例中,存儲器114或其一部分可以被并入處理器110中。
處理器110可以被實現為能夠執行本文所描述的功能的任意類型的處理器。例如,處理器110可以被實現為(一個或多個)單核或多核處理器、單插槽或多插槽處理器、數字信號處理器、微控制器、或其他處理器或處理/控制電路。類似地,存儲器114可以被實現為能夠執行本文所描述的功能的任意類型的易失性或非易失性存儲器或數據存儲裝置。在操作中,存儲器114可以存儲在可攝入計算設備100的操作期間使用的各種數據和軟件,例如操作系統、應用、程序、程序代碼模塊、庫、和/或驅動程序。存儲器114通過i/o子系統112通信地耦合到處理器110,io子系統112可以被實現為用于促進與處理器110、存儲器114、和可攝入計算設備100的其他組件的輸入/輸出操作的電路和/或組件。例如,i/o子系統112可以被實現為(或以其他方式包括)存儲器控制器集線器、輸入/輸出控制集線器、固件設備、通信鏈路(即,點到點鏈路、總線鏈路、電線、電纜、光導、印刷電路板跡線等等)、和/或用于促進輸入/輸出操作的其他組件和子系統。在一些實施例中,i/o子系統112可以形成片上系統(soc)的一部分,并且與處理器110、存儲器114、和可攝入計算設備100的其他組件一起被并入在單個集成電路芯片上。
數據存儲裝置116可以被實現為被配置用于數據的短期或長期存儲的任意類型的一個或多個設備。例如,數據存儲裝置116可以包括任意一個或多個存儲器設備和電路、存儲卡、硬盤驅動器、固態驅動器、或其他數據存儲設備。示例性地,數據存儲裝置116可以包括功能數據庫160和/或測試原語162。功能數據庫160包括指示可攝入計算設備100可以執行的所有各種設備功能的數據。例如,功能數據庫160包括執行各個設備功能所需的程序代碼模塊。任意一個設備功能可以對應于一個或多個程序代碼模塊。如下面更詳細地討論的,程序代碼模塊可以被組裝和被編譯從而生成可執行代碼,以用于使得可攝入計算設備100執行相關聯的設備功能。數據存儲裝置116的測試原語可以被實現為可用于在執行之前測試所生成的可執行代碼從而確保準確性、預期行為、和/或與用戶的兼容性的任意類型的數據。
安全引擎118可以被實現為能夠執行指令的安全運行、或為可攝入計算設備100提供安全服務的任意類型的處理器或處理電路。例如,安全引擎108可被實現為安全協處理器、可信平臺模塊(tpm)、可管理引擎、加密加速處理器等等。在一些實施例中,安全引擎108被實現為與處理器110分離的嵌入式帶外微處理器,其能夠執行代碼并且尋址處理器110不可訪問的數據。雖然在圖1中被示出為單獨的組件,但是安全引擎118可以形成處理器110、i/o子系統112、或可攝入計算設備100的其他組件的一部分,或以其他方式被實現在處理器110、i/o子系統112、或可攝入計算設備100的其他組件中。說明性地,安全引擎118存儲一組安全密鑰,其可以被實現為加密密鑰,用于認證存儲在功能數據庫160中的程序代碼模塊、和/或從遠程設備接收的通信,如下面將進行討論的。
電源120可以被實現為能夠向可攝入計算設備100的其他部件提供電力的任意類型的電源。例如,電源120可以被實現為一組電池、或其他類型的電源。
傳感器130可被實現為能夠感測用戶的生物特性的任意類型的傳感器。例如,傳感器130可以被實現為血糖傳感器、膽固醇傳感器、器官功能傳感器、或能夠感測用戶的生物特性的任意其它類型的傳感器。傳感器130也可以是可編程的。在一些實施例中,可攝入計算設備100可以包括大量的傳感器130,當可攝入計算設備被編程為執行某些功能時,可以不使用其中的一些傳感器。
輸出設備140可被實現為用于促進可攝入計算設備100的設備功能的任意類型的輸出設備。例如,根據特定設備功能,輸出設備140可以促進藥物到用戶的遞送、激素的釋放、無線通信消息、基因序列的產生、和/或其他功能輸出。同樣,可攝入計算設備100可以包括大量的輸出設備140,當可攝入計算設備被編程為執行某些功能時,可以不使用其中的一些輸出設備。
通信電路122可以被實現為能夠使能可攝入計算設備100與位于用戶的身體外部的遠程計算設備之間的通信的任意通信電路、設備或它們的集合。為此,通信電路122可以被配置為使用任意一個或多個通信技術和相關聯的協議(例如,
現在參考圖2,在使用中,可攝入計算設備100可以建立環境200。說明性環境200包括傳感器分析模塊202、功能執行模塊204、功能調整模塊206、和驗證模塊208。環境200的這些模塊和其他組件中的每一個可以被實現為固件、軟件、硬件、或它們的組合。例如,環境200的各種模塊、邏輯、和其他組件可以形成處理器110、i/o子系統112、soc、或可攝入計算設備100的其他硬件組件的一部分,或以其他方式由處理器110、i/o子系統112、soc、或可攝入計算設備100的其他硬件組件建立。因此,在一些實施例中,環境200的任一個或多個模塊可以被實現為電路或電子器件的集合(例如,傳感器分析電路、功能執行電路、功能調整電路、和驗證電路等等)。
傳感器分析模塊202被配置為控制傳感器130以生成指示用戶的生物特性的傳感器數據。由傳感器分析模塊202監測的一個或多個特定生物特性可以取決于可攝入計算設備100的當前設備功能。例如,如果當前設備功能是產生胰島素,則傳感器分析模塊202可以監測指示用戶的血糖水平的傳感器數據。或者,如果設備功能是將藥物遞送給患者,則傳感器分析模塊202可被配置為監測指示所遞送的藥物的功效或水平的傳感器數據。傳感器分析模塊202向功能調整模塊206提供所生成的傳感器數據以用于進一步分析。
功能執行模塊204被配置為控制可攝入計算設備100的組件以執行當前設備功能。例如,功能執行模塊204可以控制一個或多個輸出設備140來執行當前設備功能(例如,藥物的遞送、激素的釋放、基因序列的產生等)。如果設備功能與感測特定數據有關,則功能執行模塊204還可以控制一個或多個傳感器130來執行設備功能(例如,感測藥物在用戶的身體內的功效、記錄生物刺激或功能等)。
功能調整模塊206被配置為:分析由傳感器分析模塊202提供的傳感器數據,基于傳感器數據來確定是否需要或期望調整設備功能,以及執行對設備功能的調整。例如,傳感器數據可以指示緊急狀況的發生(例如,用戶心臟病發作),并且功能調整模塊206可以確定需要或期望新的設備功能來響應緊急狀況(例如,釋放藥物以抑制心臟病發作)。
功能調整模塊206包括調整確定模塊210,其被配置為基于從傳感器分析模塊202接收到的傳感器數據來確定是否需要調整當前設備功能。為此,調整確定模塊210可以對傳感器數據進行任意適當的分析或比較。例如,在一些實施例中,傳感器分析模塊202可以將傳感器數據與各種閾值進行比較,從而確定是否需要進行功能調整。應當理解,對設備功能的調整可以產生完全不同的設備功能、或對當前設備功能進行修改。例如,新的設備功能相對于舊的設備功能可以簡單地調整藥物的遞送數量,其以不同的遞送速率執行相同的功能。
功能調整模塊206還包括功能選擇模塊212,其被配置為從功能數據庫160中選擇新功能,并且獲取相應的程序代碼模塊。功能選擇模塊212可以基于任意標準并且使用任意適當的選擇算法來選擇新功能。在說明性實施例中,功能選擇模塊212基于由傳感器分析模塊202提供的傳感器數據來選擇新功能。為了選擇新功能,功能選擇模塊212識別執行新功能所需的程序代碼模塊,并且從功能數據庫160中獲取程序代碼模塊。在一些實施例中,功能選擇模塊可以包括認證模塊214,其被配置為對程序代碼模塊進行認證。例如,每個程序代碼模塊可以被加密地簽名,并且認證模塊214可以使用安全密鑰170來認證每個程序代碼。此外,如下面更詳細地討論的,可攝入計算設備100可以從用戶的身體外部的計算設備接收新功能(即,用于實現新功能的程序代碼模塊)。在這類實施例中,認證模塊214還可以使用安全密鑰170來認證通信鏈路以及接收到的任意通信模塊。
可攝入計算設備100基于程序代碼模塊來生成可執行代碼,可執行代碼可以由可攝入計算設備100執行從而執行新功能。為此,可攝入計算設備100包括編譯器模塊216,用于編譯程序代碼模塊。編譯器模塊216可以被實現為(或以其他方式使用)任意類型的編譯器。在一個實施例中,編譯器模塊216被實現為即時編譯器。
在可攝入計算設備100執行新的可執行代碼之前,驗證模塊208可以使用測試原語162來驗證該可執行代碼。為此,驗證模塊208可以在安全環境220(例如,可信執行環境)中驗證可執行代碼,該安全環境220可以由安全引擎118建立。驗證模塊208確保可執行代碼的正確執行,并且驗證可執行代碼以執行期望的新功能。在一些實施例中,測試原語162基于用戶的遺傳構成被配置,并且驗證模塊208確保可執行代碼針對特定用戶正確地執行新功能。如果驗證模塊208成功驗證新創建的可執行代碼,則可攝入計算設備100執行新的可執行代碼,并且開始執行新功能。與此同時,可攝入計算設備100可以停止執行先前的功能,也可以不停止執行先前的功能。
現在參考圖3,在使用中,可攝入計算設備100的(一個或多個)設備功能可以執行用于在設備100被攝入之前初始化設備功能的方法300。方法300從框302開始,其中,選擇將由可攝入計算設備100執行的(一個或多個)初始功能。在一些實施例中,可攝入計算設備100可以選擇初始功能(例如,基于默認選擇),或者可攝入計算設備100的設計者或制造商可以選擇初始功能。無論如何,在框304中,識別執行(一個或多個)所選擇的功能所需的程序代碼模塊。
隨后,在框306中,基于所識別的程序代碼模塊生成用于執行所選擇的功能的可執行代碼。為此,如上所述,在框308中,編譯程序代碼模塊從而生成可執行代碼。隨后在框310中,驗證所生成的可執行代碼。例如,在框312中,可以使用測試原語162在安全環境220中驗證可執行代碼。
在框314中,可攝入計算設備100確定執行代碼是否被成功驗證。如果沒有被成功驗證,則方法300循環回到框302,其中可以選擇新的初始功能。然而,在框314中,如果可執行代碼被驗證,則方法300進行到框316,其中可攝入計算設備100被攝入到用戶的身體中。如上所述,可攝入計算設備100可以由用戶通過以下方式攝入:吞咽可攝入計算設備100、注射可攝入計算設備100、植入可攝入計算設備100、或可用于將可攝入計算設備100放置到用戶內的其他方法。
現在參考圖4,在使用中,可攝入計算設備100可以執行用于調整可攝入計算設備100的設備功能的方法400。方法400從框402和414開始。在框402中,可攝入計算設備100執行當前設備功能。如上所述,可攝入計算設備100可以被配置為執行通常由可攝入計算設備執行的任意類型的設備功能。例如,在框404中,可攝入計算設備100可以感測用戶的生物刺激。例如,可攝入計算設備可以感測:被遞送到用戶的身體的藥物的功效、用戶的器官的功能、用戶的身體中的激素或化學物質的存在等等。在框406中,可攝入計算設備100可以對感測到的用戶的生物刺激做出響應。例如,可攝入計算設備100可以釋放藥物、產生基因序列等等。在框408中,可攝入計算設備100可以記錄感測到的生物刺激(例如,記錄血糖水平)。在框410中,可攝入計算設備100可以產生激素(例如,響應于感測到的生物刺激)。此外或替代地,在框412中,可攝入計算設備100可以生成一個或多個警報。例如,可攝入計算設備100可以基于感測到的生物刺激來生成警報。所生成的警報可以被實現為本地警報或遠程警報。例如,在一些實施例中,在框412中,可攝入計算設備100被配置為向遠程計算設備發送警報通知。
回到框414,可攝入計算設備100在執行其(一個或多個)當前設備功能的同時,還從傳感器130接收傳感器數據。可攝入計算設備100隨后分析傳感器數據,以確定是否需要或期望調整可攝入計算設備100的當前設備功能。為此,例如,可攝入計算設備100可以將接收到的傳感器數據與閾值或數據進行比較(例如,將血糖水平與閾值水平進行比較)。
在框420中,可攝入計算設備100基于框416中所分析的傳感器數據來確定是否調整設備功能。如果不調整,方法400循環回到框402(其中可攝入計算設備100繼續執行其當前設備功能)和框414(其中可攝入計算設備100繼續監測來自傳感器130的傳感器數據)。然而,如果可攝入計算設備100確定需要或期望進行設備功能調整,則方法進行到框422。
在框422中,可攝入計算設備100選擇將要執行的新的設備功能。如上所述,可攝入計算設備100可以基于來自傳感器130的感測到的數據或其他標準來選擇新的設備功能。在框424中,可攝入計算設備100從功能數據庫160中識別或選擇執行所選擇的設備功能所需要的相應程序代碼。在框426中,可以使用安全密鑰170來驗證所選擇的程序代碼,如上面所討論的。
在框428中,可攝入計算設備100基于所選擇的程序代碼模塊來生成新的可執行代碼。為此,在框430中,可攝入計算設備100可以編譯所選擇的程序代碼模塊(例如,使用即時編譯器)。隨后,在框432中,驗證所生成的可執行代碼。例如,如上所述,可以使用測試原語162驗證所生成的可執行代碼。在框436中,可攝入計算設備100確定新生成的可執行代碼是否已經被驗證。如果未被驗證,則方法400循環回到框420,其中可攝入計算設備100再次確定是否需要進行設備功能調整,并且如果需要的話,則可以在框422中選擇新功能。然而,在框436中,如果可攝入計算設備100確定新生成的可執行代碼被驗證,則方法400進行到框438,其中新生成的可執行代碼由可攝入計算設備100執行,并且在框402中,可攝入計算設備100開始執行設備功能。
現在參考圖5,如上所述,可攝入計算設備100可以被配置為通過無線通信從遠程計算設備接收用于新功能的程序代碼模塊。在這類實施例中,可攝入計算設備100可以執行用于更新可攝入計算設備100的設備功能的方法500。方法500從框502和504開始。在框502中,可攝入計算設備100執行當前設備功能,如上面針對方法400的框402所討論的。在框504中,可攝入計算設備100確定是否已經接收到外部通信。如果已經接收到,則方法500進行到框506,其中可攝入計算設備100認證外部通信。如上所述,可攝入計算設備100可以使用安全密鑰170來認證外部通信。如果外部通信未被認證,則方法500循環回到框502(其中可攝入計算設備100繼續執行當前設備功能)和框504(其中可攝入計算設備100監視附加的外部通信)。
然而,如果外部通信被認證,則方法500進行到框510,其中可攝入計算設備100通過外部通信接收新功能。為此,在框512中,可攝入計算設備100接收用于執行新功能的程序代碼模塊。隨后,在框514中,可攝入計算設備100使用接收到的程序代碼模塊來生成新的可執行代碼。如上所述,在框516中,可攝入計算設備100可以通過編譯程序代碼模塊來生成新的可執行代碼。
隨后,在框518中,驗證所生成的可執行代碼。例如,如上所述,在框520中,可以使用測試原語162來驗證所生成的可執行代碼。在框522中,可攝入計算設備100確定新生成的可執行代碼是否已經被驗證。如果未被驗證,則方法500循環回到框502(其中可攝入計算設備100繼續執行當前設備功能)和框504(其中可攝入計算設備100監視附加的外部通信)。然而,在框522中,如果可攝入計算設備100確定新生成的可執行代碼被驗證,則方法500進行到框524,其中新生成的可執行代碼由可攝入計算設備100執行,并且在框502中,可攝入計算設備100開始執行設備功能。
應當理解,本文所描述的技術提供了用于在可攝入計算設備被保留在用戶的身體內時更新可攝入計算設備的功能的機制。這樣的更新可以以如上針對圖4所描述的自主方式、或以如上針對圖5所描述的協助方式發生。
示例
下面提供了本文中所公開的設備、系統和方法的說明性示例。設備、系統和方法的實施例可以包括下面所描述的示例中的任一個或多個、以及它們的組合。
示例1包括用于在用戶的身體內執行設備功能的可攝入計算設備,該可攝入計算設備包括:傳感器分析模塊,用于生成指示可攝入計算設備的用戶的生物特性的傳感器數據;功能執行模塊,用于在用戶的身體內執行設備功能;以及功能調整模塊,用于基于傳感器數據來確定是否需要調整設備功能,并且響應于確定需要調整設備功能,執行以下操作:(i)基于傳感器數據確定將由可攝入計算設備執行的新功能;(ii)獲得與新功能相關聯的一個或多個程序代碼模塊;(iii)基于一個或多個程序代碼模塊生成用于可攝入計算設備的可執行代碼,其中可執行代碼使得可攝入計算設備執行新設備功能。
示例2包括示例1的主題,其中,傳感器數據包括指示用戶的身體的生物機能的傳感器數據。
示例3包括示例1和2中任一個的主題,其中,傳感器數據包括指示設備功能的功效的傳感器數據。
示例4包括示例1-3中任一個的主題,其中,傳感器數據包括指示藥物在用戶的身體內的功效的傳感器數據。
示例5包括示例1-4中任一個的主題,其中,執行設備功能包括執行以下操作中的至少一個:(i)感測用戶的身體的生物刺激,(ii)響應用戶的身體的生物刺激,(iii)感測藥物在用戶的身體內的功效,(iv)將激素釋放到用戶的身體中,(v)在用戶的身體內產生基因序列,(vi)記錄患者的身體的生物刺激,或(vii)基于傳感器數據生成警報。
示例6包括示例1-5中任一個的主題,其中,確定是否需要調整設備功能包括:將傳感器數據與閾值進行比較,并且響應于傳感器數據與閾值具有參照關系來確定需要調整設備功能。
示例7包括示例1-6中任一個的主題,還包括功能數據庫,在該功能數據庫中存儲有可攝入計算設備的可用功能,其中確定由可攝入計算設備執行的新功能包括從功能數據庫中選擇新功能。
示例8包括示例1-7中任一個的主題,其中,獲得一個或多個程序代碼模塊包括基于選擇的新功能從功能數據庫中獲取一個或多個程序代碼模塊。
示例9包括示例1-8中任一個的主題,還包括驗證模塊,用于在生成可執行代碼之前,基于存儲在可攝入計算設備上的一組測試原語來驗證一個或多個程序代碼。
示例10包括示例1-9中任一個的主題,其中,一個或多個程序代碼模塊中的每一個基于具體用戶的生物樣本針對該用戶進行定制。
示例11包括示例1-10中任一個的主題,其中,生成用于可攝入計算設備的可執行代碼包括編譯一個或多個程序代碼模塊以生成可執行代碼。
示例12包括示例1-11中任一個的主題,還包括驗證模塊,用于基于存儲在可攝入計算設備上的一組測試原語來驗證可執行代碼。
示例13包括示例1-12中任一個的主題,還包括安全引擎,在該安全引擎中存儲有一組加密密鑰,其中安全引擎用于基于一組加密密鑰來驗證可執行代碼。
示例14包括示例1-13中任一個的主題,其中,功能執行模塊還用于響應于對可執行代碼的驗證,來執行可執行代碼以使得可攝入計算設備執行新設備功能。
示例15包括示例1-14中任一個的主題,還包括通信模塊,用于從位于用戶的身體外部的計算設備通過傳輸來接收一個或多個程序代碼模塊。
示例16包括示例1-15中任一個的主題,還包括安全引擎,在該安全引擎中存儲有一組加密密鑰,其中安全引擎用于在生成可執行代碼之前使用加密密鑰來認證傳輸。
示例17包括示例1-16中任一個的主題,其中,生成用于可攝入計算設備的可執行代碼包括編譯一個或多個程序代碼模塊以生成可執行代碼。
示例18包括示例1-17中任一個的主題,還包括驗證模塊,用于基于存儲在可攝入計算設備上的一組測試原語來驗證可執行代碼。
示例19包括用于管理可攝入計算設備的設備功能的方法,該方法包括:由可攝入計算設備的傳感器生成指示可攝入計算設備的用戶的生物特性的傳感器數據;由可攝入計算設備在用戶的身體內執行設備功能;由可攝入計算設備基于傳感器數據確定是否需要調整設備功能;以及響應于需要調整設備功能的確定,執行以下操作:(i)由可攝入計算設備基于傳感器數據確定將由可攝入計算設備執行的新功能;(ii)由可攝入計算設備獲得與新功能相關聯的一個或多個程序代碼模塊;(iii)由可攝入計算設備基于一個或多個程序代碼模塊生成用于可攝入計算設備的可執行代碼,其中可執行代碼使得可攝入計算設備執行新設備功能。
示例20包括示例19的主題,其中,生成傳感器數據包括:生成指示用戶的身體的生物機能的傳感器數據。
示例21包括示例19和20中任一個的主題,其中,生成傳感器數據包括:生成指示設備功能的功效的傳感器數據。
示例22包括示例19-21中任一個的主題,其中,生成傳感器數據包括:生成指示藥物在用戶的身體內的功效的傳感器數據。
示例23包括示例19-22中任一個的主題,其中,執行設備功能包括執行以下操作中的至少一個:(i)感測用戶的身體的生物刺激,(ii)響應用戶的身體的生物刺激,(iii)感測藥物在用戶的身體內的功效,(iv)將激素釋放到用戶的身體中,(v)在用戶的身體內產生基因序列,(vi)記錄患者的身體的生物刺激,或(vii)基于傳感器數據生成警報。
示例24包括示例19-23中任一個的主題,確定是否需要調整設備功能包括:將傳感器數據與閾值進行比較,并且響應于傳感器數據與閾值具有參照關系來確定需要調整設備功能。
示例25包括示例19-24中任一個的主題,其中,確定由可攝入計算設備執行的新功能包括從存儲在可攝入計算設備上的可用功能的功能數據庫中選擇新功能。
示例26包括示例19-25中任一個的主題,其中,獲得一個或多個程序代碼模塊包括,基于選擇的新功能從功能數據庫中獲取一個或多個程序代碼模塊。
示例27包括示例19-26中任一個的主題,還包括由可攝入計算設備在生成可執行代碼之前,基于存儲在可攝入計算設備上的一組測試原語來驗證一個或多個程序代碼。
示例28包括示例19-27中任一個的主題,其中,一個或多個程序代碼模塊中的每一個基于具體用戶的生物樣本針對該用戶進行定制。
示例29包括示例19-28中任一個的主題,其中,生成用于可攝入計算設備的可執行代碼包括,編譯一個或多個程序代碼模塊以生成可執行代碼。
示例30包括示例19-29中任一個的主題,還包括由可攝入計算設備基于存儲在可攝入計算設備上的一組測試原語來驗證可執行代碼。
示例31包括示例19-30中任一個的主題,其中,驗證可執行代碼包括,基于存儲在可攝入計算設備的安全引擎中的一組加密密鑰來驗證可執行代碼。
示例32包括示例19-31中任一個的主題,還包括響應于可執行代碼的驗證,由可攝入計算設備執行可執行代碼以使得可攝入計算設備執行新設備功能。
示例33包括示例19-32中任一個的主題,其中,獲得一個或多個程序代碼模塊包括:由可攝入計算設備從位于用戶的身體外部的計算設備通過傳輸來接收一個或多個程序代碼模塊。
示例34包括示例19-33中任一個的主題,還包括由可攝入計算設備在生成可執行代碼之前使用存儲在可攝入計算設備的安全引擎中的加密密鑰來認證傳輸。
示例35包括示例19-34中任一個的主題,其中,生成用于可攝入計算設備的可執行代碼包括:編譯一個或多個程序代碼模塊以生成可執行代碼。
示例36包括示例19-35中任一個的主題,還包括由可攝入計算設備基于存儲在可攝入計算設備上的一組測試原語來驗證可執行代碼。
示例37包括一個或多個包括存儲在其上的多個指令的計算機可讀存儲介質,響應于多個指令被執行,使得可攝入計算設備執行示例19-36中任一項的方法。
示例38包括一種用于在用戶的身體內執行設備功能的可攝入計算設備,可攝入計算設備包括用于執行示例19-36中任一項的方法的裝置。