Linux 커널에서 직접 시스템 성능 데이터에 액세스

Cromulent

Linux 시스템에서 성능 통계를 가져 오는 애플리케이션을 작성해야합니다. 불행히도 환경은 메모리가 극도로 제한되어 있으므로 표준 명령 줄 도구를 사용하는 것은 꽤 자주 폴링해야하므로 실제로 옵션이 아닙니다.

이상적으로 제가 할 수있는 것은 커널 자체에서 직접 성능 데이터를 가져 오는 것입니다.이 버퍼와 동일한 버퍼와 데이터를 사용하여 애플리케이션의 RAM 요구 사항을 최대한 줄이려고합니다. 내 앱을 Linux 커널에 너무 가깝게 묶는 것은 우리가 프로덕션에서 Linux를 사용한 적이있는 문제가 아니며 실제로 변화하는 것을 볼 수 없습니다.

커널 소스를 살펴보면서 마지막 하루나 이틀을 보냈지 만 어느 정도 길을 잃었다는 사실을 인정해야합니다. 누구든지 CPU 성능 정보 / I / O 성능 정보 / 네트워킹 성능 정보 및 대역폭 사용 정보에 액세스 할 수있는 올바른 위치를 알려줄 수 있습니까?

tian_yufeng

/ proc / stat, / proc / diskstats, / proc / net / *과 같은 / proc 아래에 여러 파일이 있다고 생각합니다.

CPU 성능 정보의 경우 / proc / stat를 사용하여 Linux 커널 소스 코드 트리의 ./fs/proc/stat.c 파일에 파일 형식이 정의됩니다.

디스크 액세스 정보의 경우 / proc / diskstats를 사용하여 파일 형식은 Linux Kernel 소스 코드 트리의 ./block/genhd.c 파일에 정의되며 함수는 diskstats_show ()입니다.

네트워크 관련 통계의 경우 / proc / net /에있는 파일을 참조 할 수 있습니다. 하지만 / proc / net 디렉토리 아래의 파일을 기반으로 대역폭 사용량을 계산하는 방법을 모르겠습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Linux에서 VGA 핀에 직접 액세스

분류에서Dev

데이터베이스에 대한 직접 액세스 방지

분류에서Dev

Angular에서 직접 개체 속성에 액세스

분류에서Dev

codeigniter에서 양식 게시 기능에 대한 직접 액세스 방지

분류에서Dev

함수 스택에 직접 액세스

분류에서Dev

Xamarin.Forms에서 Sql 서버 데이터베이스에 직접 액세스

분류에서Dev

Android 10 이상에서 직접 파일 액세스 (SQlite 데이터베이스)

분류에서Dev

Unix / Linux 파일 시스템의 inode에 직접 데이터를 저장할 수 있습니까?

분류에서Dev

PHP에서 직접 액세스 양식 성공 페이지 방지

분류에서Dev

Angular * ng 서비스에서 직접 어레이에 액세스

분류에서Dev

중첩 된 json 데이터 구문 분석-멤버에 직접 액세스

분류에서Dev

Linux에서 PC 스피커를 직접 구동하는 방법

분류에서Dev

Linux 커널 파일에서 시스템 호출 사용

분류에서Dev

Rails로 스타일 시트에 직접 액세스

분류에서Dev

LAN의 Linux 시스템에서 Windows 7 시스템에 액세스

분류에서Dev

Linux OS에서 Windows 파일 시스템에 액세스

분류에서Dev

데이터베이스에서 직접 웹 서비스 게시

분류에서Dev

Java : Linux 시스템에서 Windows 파일 액세스

분류에서Dev

변수에서 직접 슬라이더 값에 액세스

분류에서Dev

변수에서 직접 슬라이더 값에 액세스

분류에서Dev

클라이언트 측에서 직접 Mongodb에 액세스

분류에서Dev

AWS Lightsail-정적 IP에 대한 직접 액세스 비활성화

분류에서Dev

cakephp 컨트롤러에 대한 직접 액세스 비활성화

분류에서Dev

Iframe에 대한 직접 액세스를 비활성화하는 방법

분류에서Dev

기본 앱에서 데이터베이스에 직접 액세스 (보안 문제가 있습니까?)

분류에서Dev

VirtualBox의 Linux Mint 게스트에서 커널 패닉 : "초기화를 종료하려고했습니다!", "일부 프로그램이 하드웨어에 직접 액세스하려고 할 수 있습니다."

분류에서Dev

Linux 서버에서 직접 Windows 공유에 액세스하고 파일을 복사 할 수 있습니까?

분류에서Dev

SFX 아카이브에서 직접 파일 액세스

분류에서Dev

Linux 커널에서 Unix 파일 시스템 지원을 활성화하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    Linux에서 VGA 핀에 직접 액세스

  2. 2

    데이터베이스에 대한 직접 액세스 방지

  3. 3

    Angular에서 직접 개체 속성에 액세스

  4. 4

    codeigniter에서 양식 게시 기능에 대한 직접 액세스 방지

  5. 5

    함수 스택에 직접 액세스

  6. 6

    Xamarin.Forms에서 Sql 서버 데이터베이스에 직접 액세스

  7. 7

    Android 10 이상에서 직접 파일 액세스 (SQlite 데이터베이스)

  8. 8

    Unix / Linux 파일 시스템의 inode에 직접 데이터를 저장할 수 있습니까?

  9. 9

    PHP에서 직접 액세스 양식 성공 페이지 방지

  10. 10

    Angular * ng 서비스에서 직접 어레이에 액세스

  11. 11

    중첩 된 json 데이터 구문 분석-멤버에 직접 액세스

  12. 12

    Linux에서 PC 스피커를 직접 구동하는 방법

  13. 13

    Linux 커널 파일에서 시스템 호출 사용

  14. 14

    Rails로 스타일 시트에 직접 액세스

  15. 15

    LAN의 Linux 시스템에서 Windows 7 시스템에 액세스

  16. 16

    Linux OS에서 Windows 파일 시스템에 액세스

  17. 17

    데이터베이스에서 직접 웹 서비스 게시

  18. 18

    Java : Linux 시스템에서 Windows 파일 액세스

  19. 19

    변수에서 직접 슬라이더 값에 액세스

  20. 20

    변수에서 직접 슬라이더 값에 액세스

  21. 21

    클라이언트 측에서 직접 Mongodb에 액세스

  22. 22

    AWS Lightsail-정적 IP에 대한 직접 액세스 비활성화

  23. 23

    cakephp 컨트롤러에 대한 직접 액세스 비활성화

  24. 24

    Iframe에 대한 직접 액세스를 비활성화하는 방법

  25. 25

    기본 앱에서 데이터베이스에 직접 액세스 (보안 문제가 있습니까?)

  26. 26

    VirtualBox의 Linux Mint 게스트에서 커널 패닉 : "초기화를 종료하려고했습니다!", "일부 프로그램이 하드웨어에 직접 액세스하려고 할 수 있습니다."

  27. 27

    Linux 서버에서 직접 Windows 공유에 액세스하고 파일을 복사 할 수 있습니까?

  28. 28

    SFX 아카이브에서 직접 파일 액세스

  29. 29

    Linux 커널에서 Unix 파일 시스템 지원을 활성화하는 방법은 무엇입니까?

뜨겁다태그

보관