• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Informacje Systemowe - Biblioteka C++

HackNation - ogólnopolski hackathon
0 głosów
535 wizyt
pytanie zadane 23 lipca 2020 w C i C++ przez kubekszklany Gaduła (3,250 p.)
edycja 23 lipca 2020 przez kubekszklany

Witam. Szukam biblioteki do c++, dzięki której odczytam takie informacje jak użycie procesora czy pamięci ram, najlepiej do linuxa. Mniej więcej coś takiego, tylko w cpp a nie w pythonie:

komentarz 23 lipca 2020 przez tkz Nałogowiec (42,040 p.)
Zdjęcie, szukasz na linuxa, AVR, ARM'a? Trochę mylący opis.
komentarz 23 lipca 2020 przez kubekszklany Gaduła (3,250 p.)
Napisałem, że biblioteka do c++, na linuxa. A z tego co się orientuję to chyba nie ma znaczenia czy to x86 czy arm, skoro dopiero przy kompilacji wybiera się architekturę. Ale żby być dokladnym, to chciałem zrobić dokładnie to co na zdjęciu wyżej, tylko na innym mikrokomputerze i innym wyświetlaczu. Datę i godzinę już mam wyświetloną, teraz potrzebuję biblioteki dzięki której będę mógł odczytać informacje systemowe, najlepiej te same co na zdjęciu wyżej.
komentarz 23 lipca 2020 przez tkz Nałogowiec (42,040 p.)

Gdyby architektura nie miała znaczenia, to nie było problemu z przeskokiem z x86 na ARM. A jest. AVR to również kompletnie inna budowa. 

W jaki sposób wybiera się architekturę przy kompilacji?

https://www.binarytides.com/linux-commands-hardware-info/

https://en.wikipedia.org/wiki/Procfs

komentarz 23 lipca 2020 przez kubekszklany Gaduła (3,250 p.)
Ale mi chodzi o bibliotekę w języku cpp. Przecież kod źródłowy nie ma określonej architektury. Przecież takie #include <iostream> mogę użyć bez względu na to czy to jest arm, x86, linux, windows czy jeszcze coś innego.
komentarz 23 lipca 2020 przez tkz Nałogowiec (42,040 p.)
AVR nie posiada iostream. Wszystko zależy, więc pytanie powinno być maksymalnie obdarzone szczegółami.
komentarz 23 lipca 2020 przez kubekszklany Gaduła (3,250 p.)
Hmm... Byłem przekonany, że kod źródłowy jest wszędzie taki sam, dopiero przy kompilacji ustalana jest architektura. Tak czy inaczej, jak już wyżej pisałem jest to mikrokomputer, więc linux na arm, a dokładniej arm64. Chodzi mi o samą bibliotekę, która posiada funkcję zwracającą powyższe wartości, tj. użycie cpu w procentach, użycie ramu w megabajtach, itd.
komentarz 24 lipca 2020 przez Oscar Nałogowiec (29,360 p.)

@kubekszklany,
 w linuxie to zwykle takie informacje są udostępniane w postaci pseudoplików w /sys, /proc itp. Wystarczy przeczytać odpowiedni.

komentarz 24 lipca 2020 przez kubekszklany Gaduła (3,250 p.)

Niby tak, ale zastanawiam się, czy ktoś już takiego kodu nie napisał i nie umieścił tego w bibliotece - bo samemu to napisać to trochę dużo roboty, a jeśli jest gdzieś gotowe rozwiązanie to chętnie skorzystam. Pamiętam jak kiedyś robiłem coś takiego na windowsa w c# i tam były gotowe biblioteki: https://forbot.pl/forum/topic/13293-monitor-zasobow-na-arduino/

1
komentarz 24 lipca 2020 przez tkz Nałogowiec (42,040 p.)
Na pewno jest gotowe rozwiązanie, ale nie widzę problemu by odczytać te dane i je sparsować. Napisanie takiego kodu zajmie Tobie z 30 minut, a będziesz miał szersze pole do zmian "w razie w".
komentarz 24 lipca 2020 przez kubekszklany Gaduła (3,250 p.)

Dobra, znalazłem rozwiązanie. Wystarczy wpisać te komendy (jako komendy terminalowe) w cpp:

date +"%H:%M:%S"
date +"%d-%m-%y"
free -m | awk 'NR==2{printf "Memory Usage: %s/%sMB (%.2f%%)\n", $3,$2,$3*100/$2 }'
df -h | awk '$NF=="/"{printf "Disk Usage: %d/%dGB (%s)\n", $3,$2,$5}'
top -bn1 | grep load | awk '{printf "CPU Load: %.2f\n", $(NF-2)}'
hostname && hostname -i

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
2 odpowiedzi 577 wizyt
pytanie zadane 29 listopada 2015 w C i C++ przez zmiennoimienny Mądrala (5,540 p.)
+1 głos
1 odpowiedź 608 wizyt
0 głosów
0 odpowiedzi 407 wizyt

93,627 zapytań

142,551 odpowiedzi

323,050 komentarzy

63,132 pasjonatów

Advent of Code 2025

Top 15 użytkowników

  1. 1694p. - dia-Chann
  2. 1676p. - DziarnowskiJ
  3. 1650p. - Łukasz Piwowar
  4. 1640p. - CC PL
  5. 1616p. - Maurycy W
  6. 1607p. - raydeal
  7. 1602p. - Adrian Wieprzkowicz
  8. 1588p. - Tomasz Bielak
  9. 1521p. - Michal Drewniak
  10. 1491p. - Rafał Trójniak
  11. 1471p. - rafalszastok
  12. 1444p. - robwarsz
  13. 1257p. - ssynowiec
  14. 1208p. - Mariusz Fornal
  15. 1116p. - rucin93
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...