【openbmc之entity

【openbmc之entity

entity-manager主體流程 該軟體包分為兩部分:FruDevoce EntityManager

FruDevoce主要功能是讀取i2c挂載的eeprom中FRU資料,更新到dbus上

EntityManager主要功能判斷目前的裝置是否有相應的配置。如果有就将讀取的資料和配置比對并更新到dbus上

1. Frudevice 【openbmc之entity-manager】 FruDevice首先會檢索i2c裝置是否存在 注冊“ReScan ReScanBus GetRawFru WriteFru”, phosphor-ipmi-host中調用了後兩個 讀取資料一:檢索并拼接出/dev/sys/i2c/device/i2c-/2-/eeprom路徑,然後讀取出fru資料 讀取資料二:會在0x03-0x77範圍内(第三步的排除)在進行檢索,然後讀取i2c裝置,擷取fru資料 讀取資料三:目錄“/etc/fru/baseboard.fru.bin”讀取fru資訊 這三次資料讀取都會拼接在同一個map中 dbus資料解析與更新 2.EntityManager 【openbmc之entity-manager】 EntityManager是一個服務其他應用程式的,功能很全面,我隻記錄大概流程

先定義出systemConfiguration,用來儲存解析後的json資料 檢索os-release檔案和version檔案hash值,确認是否首次加載 周遊/usr/share/entity-manager/configuration目錄下的所有json檔案 解析Probe資料為interface和fru資料,根據interface核對fru資料是否正确 接下來會生成hash值,再将其他模闆資料指派.然後指派給systemConfiguration 此時會判斷_passed值,如果為true,則會将目前的資料儲存在執行一遍 儲存好systemConfiguration後, 會寫入/var/configuration/system.json檔案中,用于下一次出現資料更新時對比 更新資料到dbus 3. 疑惑點 EntityManager中的_passde感覺很奇怪,大可不必

相关推荐

堡垒之夜新政策:作弊玩家或迎解封机会
365bet体育在线世界杯

堡垒之夜新政策:作弊玩家或迎解封机会

📅 07-07 👁️ 3698
2018世界杯 D组尼日利亚VS阿根廷  【花絮】后空翻+捶胸!摩西点球破门忘情庆祝 尼日利亚球迷高举双手激动万分
1个人一个月用多少度电-一个人一个月用多少度电
365bet体育在线世界杯

1个人一个月用多少度电-一个人一个月用多少度电

📅 07-16 👁️ 1625