RTX64 RTOS,Windows 10的即時解決方案

RTX64

概述

RTX64是英特蒙RTOS平台裡的主要產品,與Windows作業系統並存的同時,還可以在多核心處理器上支援決定性與硬即時。這完整的解決方案提供了世界級的使用者體驗,優於像是DSPs、FPGAs 和 MCUs等即時硬體,並且大幅減少需要決定性或硬即時性的系統開發成本。對稱多處理架構的RTX64充分利用了64位元記憶體和效能的優勢。獨特的是,RTX64 RTOS排程器能夠讓嵌入式即時應用程式直接存取512GB在64位元Windows上的可定址實體記憶體。這對現在的即時系統而言是很關鍵的,對比傳統32位元Windows系統限制實體記憶體只能有4GB,也是一個很大的進步。4GB的限制已經妨礙了許多仰賴即時系統跟需要更多記憶體產業的創新。

決定性

    • 精準的保證 – 可設定時間間隔到1微秒,中斷服務執行緒 (IST, Interrupt Service Thread) 延遲到小於10微秒
    • 與Windows分離 – Windows行程與即時應用程式「各自」運行在不同CPU內核
    • 可擴展性 – 一個排程器可供所有的即時行程的CPU內核使用。對稱多處理 (SMP) 感知排程器利用優先驅動以及搶佔式兩種演算法,確保關鍵執行緒的環境轉換,並且讓高優先順序的執行緒在小於微秒的間隔裡發生

控制

    • 可以設置多個即時行程能力的靈活性 (1至63個CPU實體內核)
    • 可以完全控制即時執行緒,同時伴隨著負載平衡的能力。RTX64具有設置執行緒以及中斷親和性 (interrupt affinity) 的能力
    • 當Windows故障時,控制代碼能讓RTX64應用程式繼續運行到安全的關機為止

簡化

    • 所有的應用程式都使用同一個作業系統。RTX64支援Windows 10
    • 使用商用現成軟體 (COTS) 目標系統,無須特別的硬體
    • 使用單個開發環境 – Visual Studio 2015、2017、2019
    • 對Windows和即時應用程式,使用常見的程式語言(C & C++)
    • 使用常見的Win32 API;同樣的原始碼可做為Windows或即時行程運行
    • 對Windows應用程式使用託管程式碼並同時和即時應用程式溝通
    • 即時行程可以直接跟硬體溝通
    • 在Windows應用程式和即時行程 (事件 events、互斥鎖 mutexes與號誌 semaphores) 之間可使用標準電腦通訊
    • Windows與即時行程之間可使用共享記憶體來分享數據

降低成本

    • Windows的操作介面與應用程式結合,足以完成設備的人機介面
    • 免除專用的控制器和通訊卡
    • 改善資產的使用率:善用未能充分使用的多核處理器
    • 減少製造成本以及使用更少的實體零件

效率

    • 免除硬體庫存壓力、缺貨問題和降低維護成本
    • 只需雲端下載軟體即可完成現場系統升級

 

主要特色

即時Runtime

    • 可從1個擴展到63個即時CPU實體內核
    • SMP感知排程器利用優先驅動以及搶佔式兩種演算法,確保關鍵執行緒的環境切換,並且讓高優先順序的執行緒在小於微秒的間隔裡優先發生
    • 可設置的執行緒以及中斷親和性
    • 可設置的時間間隔
    • 能夠連接基於行中斷和基於訊息中斷 (MSI/MSI-X)
    • Windows停止錯誤或關機發生時的停機處理
    • 可決定性記憶體
    • 能夠存取Windows的檔案系統和登錄檔
    • 為了生成處理程序和載入RTDLL設定搜尋路徑
    • 經由隱性或顯性載入的RTDLL獲得動態連結資料庫 (DLL, Dynamic-link library)
    • 經由監看內部物件和客製化事件側寫應用程式行為
    • Windows 使用者行程和即時行程的即時行程間通訊
      • 32位元或64位元Windows行程的原生和管理介面
      • 可用的物件:事件 (events)、互斥鎖 (mutexes) 、和號誌 (semaphore)
      • 經由共享記憶體分享數據
    • 在Windows核心驅動程式和即時行程的即時行程間通訊
      • 64位元Windows 驅動程式的原生介面
      • 可用的物件:事件、互斥鎖、和號誌
      • 經由共享記憶體分享數據
    • RTX64網路抽象層 (NAL) 提供以下的網路能力給RTX64子系統:
      • 高效能以封包為單位的回叫訊號,在第二層低延遲的傳送與接收
      • 能夠以接近線上速度傳送乙太網路封包
      • 提供乙太網路封包的加速傳輸以允許用線上速度傳送小封包
      • 當傳送多個封包時支援零複製
      • 支援IEEE-1588時間戳記
      • 支援許多常用網路卡 (NIC) 驅動程式
      • 啟用網路卡硬體佇列
      • 支援裝置輪詢
    • 以Windows使用群組減少對RTX64功能的存取
    • 工具與效用
      • 啟動和設置 – 啟動子系統元件以及設置RTSS核心
      • 控制台 – 設置子系統
      • 主控台 – 顯示輸出訊息
      • SRTM – 在已知核心上查看系統計時器處理程序的回應
      • KSRTM – 查看系統計時器中斷服務常式 (ISR) 的回應
      • 延遲檢視 – 同時在多個CPU內核上查看與比較系統計時器回應的延遲
      • 工作管理員 – 顯示正在運行的RTSS和Windows行程以及連接到RTX64的驅動程式,顯示前期行程、前期執行緒、和前期CPU使用率
      • 監視器 – 設置RTSS的側寫
      • RTX64Objects – 查看內部的物件與狀態
      • RTX64MSpaces – 查看內部的記憶體分配

軟體開發套件 (SDK)

    • 開發應用程式的表頭與函式庫
      • 與Windows Win32 API類似的即時API (RTAPI)
      • 即時核心API (RTKAPI)
      • 即時網路API (RTNAPI)
      • 即時網路驅動程式API (RTNDAPI)
      • 託管程式碼架構 (IntervalZero.RTX64) – 子系統設定與經由託管程式碼介面設置
      • 原生架構 – 設定子系統與經由C/C++介面設置
    • 支援微軟Visual Studio 2015、2017、和2019
      • 應用程式和動態函式庫 (DLL) 的開發精靈
      • API程式碼片段
      • 支援 C-Runtime
      • 藉由Visual Studio支援本地及遠端除錯器
      • 本地及遠端支援
    • 微軟WinDbg擴充套件以及RTSS symbols
    • RTX64的Percepio Tracealyzer – 使用圖形工具分析監測資料
    • 使用範例原始檔顯示基本概念

產品文件

    • 產品文件包含了安裝與用戶指南、API參照表、以及即時程式設計的詳細概念

額外可購買的功能

RT-TCP/IP 堆疊

    • RT-TCP/IP堆疊為RTX64子系統提供以下網路功能:
      • RTX64行程使用TCP/UDP/IP網路
      • 支援IPv4和IPv6
      • 支援Winsock
      • 原始通訊端 (RAW Socket)
      • MAC層過濾功能
      • 虛擬網路 – Windows和RTSS之間的點對點連結
      • 工具 (RtssArp、RtssIpConfig、RtssPing、和RtssRoute)

RTX64視覺

    • RTX64視覺為即時RTX64環境提供使用GigE Vision攝影機的功能
    • 即時GigE Vision篩選驅動程式
      • 攝影機設定工具
      • 即時GigE Vision介面與通訊函式庫
      • 打造可與RTSS視覺應用程式一起使用的OpenCV