TinyOSEnvironment編譯環境模塊設計
發布時間:2012/4/7 19:45:38 訪問次數:872
TinyOSEnvironment模塊的主要功能MP2104DJ-LF-Z是與MeshIDE for TinyOS和TinyOSCygwin的環境進行交互,提供代碼編譯和發布的功能。在編譯或發布代碼時,將使用一個執行模塊,通過使用操作系統進程來操作TinyOSCygwin。這個執行模塊同時通過執行TinyOSCygwin來獲取相應的平臺和make操作的extra選項信息。有了這些選項,可以方便地通過菜單選項來控制TinyOSCywin進行各種操作,大大方便了編譯發布代碼的操作過程。MeshIDE for TinyOS也提供一個TinyOSCygwin的彈出菜單,彈出一個Cygwin窗口,方便用戶直接對Cygwin進行設置。它主要由下面幾個重要的模塊組成。
(1)環境模塊
環境模塊是MeshIDE for TinyOS與TinyOSEnvironment的接口,它實現了meshIDE.ep包中的3個接口。通過這個模塊,可以實現MeshIDE for TinyOS和TinyOSEnvironment環境的信息交互。無論在編譯代碼、發布代碼或者在獲得節點編譯參數的過程中,都需要環境模塊和MeshIDE for TinyOS中的接口進行數據傳遞,這些功能都是由該模塊實現的。
(2)執行模塊
執行模塊的主要功能是執行節點編譯和發有的具體操作,即主要用于執行make操作。這個模塊控制了make操作中的主要過程,提供異常處理和編譯信息返回。這個模塊由編譯引擎啟動,用操作系統進程TinyOSCygwin控制,發送編譯所需的命令行至TinyOSCygwin環境中進行編譯和發布。
執行模塊的最終任務是通過TinyOSCygwin執行對nesC代碼執行make操作,從而編譯和發布代碼至傳感器節點。因此,需獲得Cygwin的工作路徑和生成目標路徑,最后執行。excute函數調用TinyOSCygwin進行編譯和發布節點時,必須先保存原有Cygwin的仿UNIX環境的文件系統,并加載設置為現有工作路徑的文件系統,在excute操作完畢后需要卸載這個文件系統。將make命令行存放在一個字符竄數組command變量中,如make mica2的命令行為i=0 value=make—C“/cygdrive/ef ECLIPS~1.2/RUNTIM~l/MESHID~l”mica2 -board=none。使用ProcessBuilder調用系統進程來執行命令行。需要修改進程生成器環境的字符串映射視圖,刪除其中的一些映射關系。完成后即可執行這個迸程,執行時創建兩個StreamGobbler來從Cygwin中讀出編譯信息,并在控制臺中輸出。最后需要刪除文件系統的加載點。
執行操作系統進程( ProcessBuilder)分為4個步驟,即保存原有加載點、設置加載點、執行命令行和恢復加載點。由于Cygwin是模擬UNIX的文件系統,和Windows的文件系統具有很大的差別,所以必須對文件系統進行重新加載,創建各個驅動器的對應快捷方式。每次執行操作系統進程時,都需要從Windows的命令行程序cmd.exe開始,“/C”參數代表執行完畢后中止。mount.exe是Cygwin下的文件系統加載程序,它的功能和使用類似于UNIX下的mount程序。
(1)環境模塊
環境模塊是MeshIDE for TinyOS與TinyOSEnvironment的接口,它實現了meshIDE.ep包中的3個接口。通過這個模塊,可以實現MeshIDE for TinyOS和TinyOSEnvironment環境的信息交互。無論在編譯代碼、發布代碼或者在獲得節點編譯參數的過程中,都需要環境模塊和MeshIDE for TinyOS中的接口進行數據傳遞,這些功能都是由該模塊實現的。
(2)執行模塊
執行模塊的主要功能是執行節點編譯和發有的具體操作,即主要用于執行make操作。這個模塊控制了make操作中的主要過程,提供異常處理和編譯信息返回。這個模塊由編譯引擎啟動,用操作系統進程TinyOSCygwin控制,發送編譯所需的命令行至TinyOSCygwin環境中進行編譯和發布。
執行模塊的最終任務是通過TinyOSCygwin執行對nesC代碼執行make操作,從而編譯和發布代碼至傳感器節點。因此,需獲得Cygwin的工作路徑和生成目標路徑,最后執行。excute函數調用TinyOSCygwin進行編譯和發布節點時,必須先保存原有Cygwin的仿UNIX環境的文件系統,并加載設置為現有工作路徑的文件系統,在excute操作完畢后需要卸載這個文件系統。將make命令行存放在一個字符竄數組command變量中,如make mica2的命令行為i=0 value=make—C“/cygdrive/ef ECLIPS~1.2/RUNTIM~l/MESHID~l”mica2 -board=none。使用ProcessBuilder調用系統進程來執行命令行。需要修改進程生成器環境的字符串映射視圖,刪除其中的一些映射關系。完成后即可執行這個迸程,執行時創建兩個StreamGobbler來從Cygwin中讀出編譯信息,并在控制臺中輸出。最后需要刪除文件系統的加載點。
執行操作系統進程( ProcessBuilder)分為4個步驟,即保存原有加載點、設置加載點、執行命令行和恢復加載點。由于Cygwin是模擬UNIX的文件系統,和Windows的文件系統具有很大的差別,所以必須對文件系統進行重新加載,創建各個驅動器的對應快捷方式。每次執行操作系統進程時,都需要從Windows的命令行程序cmd.exe開始,“/C”參數代表執行完畢后中止。mount.exe是Cygwin下的文件系統加載程序,它的功能和使用類似于UNIX下的mount程序。
TinyOSEnvironment模塊的主要功能MP2104DJ-LF-Z是與MeshIDE for TinyOS和TinyOSCygwin的環境進行交互,提供代碼編譯和發布的功能。在編譯或發布代碼時,將使用一個執行模塊,通過使用操作系統進程來操作TinyOSCygwin。這個執行模塊同時通過執行TinyOSCygwin來獲取相應的平臺和make操作的extra選項信息。有了這些選項,可以方便地通過菜單選項來控制TinyOSCywin進行各種操作,大大方便了編譯發布代碼的操作過程。MeshIDE for TinyOS也提供一個TinyOSCygwin的彈出菜單,彈出一個Cygwin窗口,方便用戶直接對Cygwin進行設置。它主要由下面幾個重要的模塊組成。
(1)環境模塊
環境模塊是MeshIDE for TinyOS與TinyOSEnvironment的接口,它實現了meshIDE.ep包中的3個接口。通過這個模塊,可以實現MeshIDE for TinyOS和TinyOSEnvironment環境的信息交互。無論在編譯代碼、發布代碼或者在獲得節點編譯參數的過程中,都需要環境模塊和MeshIDE for TinyOS中的接口進行數據傳遞,這些功能都是由該模塊實現的。
(2)執行模塊
執行模塊的主要功能是執行節點編譯和發有的具體操作,即主要用于執行make操作。這個模塊控制了make操作中的主要過程,提供異常處理和編譯信息返回。這個模塊由編譯引擎啟動,用操作系統進程TinyOSCygwin控制,發送編譯所需的命令行至TinyOSCygwin環境中進行編譯和發布。
執行模塊的最終任務是通過TinyOSCygwin執行對nesC代碼執行make操作,從而編譯和發布代碼至傳感器節點。因此,需獲得Cygwin的工作路徑和生成目標路徑,最后執行。excute函數調用TinyOSCygwin進行編譯和發布節點時,必須先保存原有Cygwin的仿UNIX環境的文件系統,并加載設置為現有工作路徑的文件系統,在excute操作完畢后需要卸載這個文件系統。將make命令行存放在一個字符竄數組command變量中,如make mica2的命令行為i=0 value=make—C“/cygdrive/ef ECLIPS~1.2/RUNTIM~l/MESHID~l”mica2 -board=none。使用ProcessBuilder調用系統進程來執行命令行。需要修改進程生成器環境的字符串映射視圖,刪除其中的一些映射關系。完成后即可執行這個迸程,執行時創建兩個StreamGobbler來從Cygwin中讀出編譯信息,并在控制臺中輸出。最后需要刪除文件系統的加載點。
執行操作系統進程( ProcessBuilder)分為4個步驟,即保存原有加載點、設置加載點、執行命令行和恢復加載點。由于Cygwin是模擬UNIX的文件系統,和Windows的文件系統具有很大的差別,所以必須對文件系統進行重新加載,創建各個驅動器的對應快捷方式。每次執行操作系統進程時,都需要從Windows的命令行程序cmd.exe開始,“/C”參數代表執行完畢后中止。mount.exe是Cygwin下的文件系統加載程序,它的功能和使用類似于UNIX下的mount程序。
(1)環境模塊
環境模塊是MeshIDE for TinyOS與TinyOSEnvironment的接口,它實現了meshIDE.ep包中的3個接口。通過這個模塊,可以實現MeshIDE for TinyOS和TinyOSEnvironment環境的信息交互。無論在編譯代碼、發布代碼或者在獲得節點編譯參數的過程中,都需要環境模塊和MeshIDE for TinyOS中的接口進行數據傳遞,這些功能都是由該模塊實現的。
(2)執行模塊
執行模塊的主要功能是執行節點編譯和發有的具體操作,即主要用于執行make操作。這個模塊控制了make操作中的主要過程,提供異常處理和編譯信息返回。這個模塊由編譯引擎啟動,用操作系統進程TinyOSCygwin控制,發送編譯所需的命令行至TinyOSCygwin環境中進行編譯和發布。
執行模塊的最終任務是通過TinyOSCygwin執行對nesC代碼執行make操作,從而編譯和發布代碼至傳感器節點。因此,需獲得Cygwin的工作路徑和生成目標路徑,最后執行。excute函數調用TinyOSCygwin進行編譯和發布節點時,必須先保存原有Cygwin的仿UNIX環境的文件系統,并加載設置為現有工作路徑的文件系統,在excute操作完畢后需要卸載這個文件系統。將make命令行存放在一個字符竄數組command變量中,如make mica2的命令行為i=0 value=make—C“/cygdrive/ef ECLIPS~1.2/RUNTIM~l/MESHID~l”mica2 -board=none。使用ProcessBuilder調用系統進程來執行命令行。需要修改進程生成器環境的字符串映射視圖,刪除其中的一些映射關系。完成后即可執行這個迸程,執行時創建兩個StreamGobbler來從Cygwin中讀出編譯信息,并在控制臺中輸出。最后需要刪除文件系統的加載點。
執行操作系統進程( ProcessBuilder)分為4個步驟,即保存原有加載點、設置加載點、執行命令行和恢復加載點。由于Cygwin是模擬UNIX的文件系統,和Windows的文件系統具有很大的差別,所以必須對文件系統進行重新加載,創建各個驅動器的對應快捷方式。每次執行操作系統進程時,都需要從Windows的命令行程序cmd.exe開始,“/C”參數代表執行完畢后中止。mount.exe是Cygwin下的文件系統加載程序,它的功能和使用類似于UNIX下的mount程序。
上一篇:透視圖模塊