博客 / 列表

f702 - Linux如何切換到PREEMT_RT實時內核?

1.實時linux介紹 Linux實時核區分了單核方法(如PREEMPT_RT)和雙核方法(如Xenomai)。 雙核方法比單核方法早了好幾年。該方法使用一個獨立的實時微內核與傳統Linux內核並行運行,增加了硬件與Linux內核之間處理實時需求的層。實時代碼優先於用户空間,只有在沒有執行實時代碼時才允許運行。 雙核方法雖然具有優異的實時性能,但缺點是固有的複雜性。正如德國嵌入式開發公司Linut

grub2 , Linux , real-time , Ubuntu

f702 - 腳本執行方式&shell環境變量設置細節

一、腳本執行 1.啓動一個新的shell來執行腳本 (1)可執行腳本 運行方式:輸入腳本【路徑+名稱】 ./test.sh /home/test.sh test.sh # $PATH裏必須有該文件的路徑才行 (2)不可執行腳本 運行方式:需要用【解釋器 路徑+名稱】運行,或給腳本加執行權限(chmod +x) bash ./test.sh sh ./test.sh 2.在當前shell裏執行腳本

Linux , shell

f702 - 解決:Reworks上開發node-exporter報錯—內存篇

Reworks為嵌入式實時操作系統,arm架構 編譯報錯 1.報錯:編譯庫缺失 分析:__atomic_load_8,屬於原子操作庫libatomic 。 正則表達式庫 libregex相關函數 : __atomic_store_8 中的 "8" 代表8 字節,也就是64 位操作。意味着在編譯器確定 self-r_value 的類型時,它被判定為 64 位類型(例如 long long

嵌入式 , 操作系統 , prometheus , c

f702 - 解決:k3s核心組件全部啓動失敗

現象:k3s核心組件狀態均為CrashLoopBackOff 原因分析: 網絡問題,容器網絡重建失敗或 iptables 丟失,無法訪問API-server 產生原因:虛擬機掛起,重新打開會對網絡產生一定的影響 #k3s日誌報錯: failed to "StartContainer" for "coredns" with CrashLoopBackOff ... unable to retriev

kubernetes , network , error , Docker

f702 - WebAssembly容器調研

“容器已成為新常態,WebAssembly 是未來。” —— CNCF 2022 年年度調查主要發現 1. 什麼是WebAssembly? wasm是一種緊湊的二進制指令格式,由W3C管理。它是 40 多種編程語言(如 C/C++、JavaScript、Go 和 Rust)的可移植編譯目標,每一種目標彙編語言(x86、ARM)都依賴於特定的機器結構,但wasm不依賴於具體的物理機器,換句話説,wa

kubernetes , webassembly , 知識 , Docker

f702 - linux上WAMR環境配置流程

在主機上搭建WAMR的核心是構建iwasm執行器,另一種方式是以運行時庫libiwasm.a的形式調用,本文不介紹這個方式。 1. 主機環境準備(以 Ubuntu 20.04 為例) 1.1 構建 wamrc AOT 編譯器 wasm 二進制文件和 AOT 文件都受 iwasm 支持。wamrc AOT 編譯器是將 wasm 二進制文件編譯成 AOT 文件,也可以由 iwasm 運行。執行以下命令

clang , runtime , webassembly

f702 - Prometheus中系統CPU使用率如何計算?

先放結論,Prometheus中採集的原始指標無法直接表示CPU使用率,需要通過promQL語言二次計算,計算公式如下: sum by(instance)(rate(node_cpu_seconds_total{mode!="idle"}[15s])) / sum by(instance)(rate(node_cpu_seconds_total[15s])) 該公式的計算原理與top命令中計算cp

prometheus , cpu