Viewswap e gviewswap - ver os programa cujas páginas estão na área de swap

Uma pequena tool para ter uma ideia da utilização da área de swap.

Consiste basicamente em ler os dados do /proc/*/status.

Já está compilado, com a versão debug. Os binários está na pasta bin.

Um dos binários mostra na tela do terminal, e o outro mostra em uma windows GTK3.

A pasta bin/share possui uma biblioteca que é a parte do código efetivamente responsável por ler os dados e é utilizada pelos dois viewers.

Se quiser fazer alguma modificação, o arquivo de projeto do Qt Creator já está na pasta.

Basta abrir o arquivo CMake pela IDE, que já está tudo pronto.
Se você preferir recompilar usando apenas as tool do CMake, também pode.

LINK DELETADO

Vale ressaltar que a própria documentação do procfs alerta que o dado registrado não é plenamente confiável. Então, use os programa apenas para ter uma ideia aproximada.

PS: O viewswap (terminal) é um shot. O gviewswap refaz a leitura a cada segundo.

WARNING : Eu deletei o link, por conta de muitos problemas com o CMake e com a carga da lib.

O que tá valendo é esse aqui, com Makefile simplex !

6 curtidas

Parece que tem arquivo duplicado e arquivo “buildd” e “buildr” e arquivos vazios.
Não achei a licença também.
Agora que usa QT não achei onde informa as dependências para rodar nem para compilar.
Agora que usa QT precisa de um ReadMe.
@chimpa_theist Eu não sei se sou eu que não sei mecher no QTCrator ou se esta faltando alguma coisa, diz que não tem cbp file mesmo eu vendo um monte eu não entende.

Não usa Qt.
Eu usei o Qt Creator, mas não fiz nada em Qt. mas fiz três projetos

  • a lib que lê os dados
  • o viewer modo texto
  • o viewer GTK3

A licensa da dentro dos fontes.

O buildd é onde eu apontei para o CMake guardar os arquivos compilados na configuração de debug

O buildr é onde o CMake guardará os arquivos na configuração de release.

São apenas pastas com resultado intermediário.

J !

Se você quiser compilar na mão :

  • Vai pro diretório do projeto
  • cmake .
  • make clean
  • make

Se você quiser editar o projeto no Qt Creator

  • chama o Qt Creator
  • clica em “Open” ou “Abrir”
  • Navega para a pasta do projeto e clica no CMakelist.txt

E se você quiser usar outro editor, para modificar alguma coisa…

  • vai para o diretório do projeto
  • cmake .
    O cmake só precisa ser executado uma vez.

Estes outros dois passos, você deve executar sempre que alterar algum arquivo.

  • edita o programa que você quiser (por exemplo, esqueci de colocar o texto da licensa no QGraphics.cpp)
  • make


Não sei se sou eu mais me deparo com isso a que.

jca@jca-31:~/Downloads/viewswap$ cmake --version
cmake version 3.5.1

CMake suite maintained and supported by Kitware (kitware.com/cmake).

Acho que essa versão é bem antiga, não ?

Eu estou no Lubuntu 16.04 deve ter 4 anos e 6 meses essa versão.

Olha.

O Qt Creator que eu estou usando é o 4.14.0.

E o cmake está na versão 3.16.3

Rodando o cmake . no terminal, mesmo. O que acontece ?

Digo, indo pra pasta do projeto e cmakar.

acho que você precisa

apt install ninja-build

Diz o codigo fonte do projeto que o minimo é cmake 3.5 o meu é para funcionar pelo menos no projeto QTCreator agora a versão mínimo do QTCreator eu não achei na fonte do projeto.
Já a tentativa de rodar o os binarios foi frustrada porque não conseguiu encontrar a biblioteca “libprocreader.so” eu tentei movendo ela para a mesma pasta dos executáveis e mesmo assim sem sucesso.

Hmmmm !

Acho que está com o path absoluto.

Vou ver aqui.

A compilação também não funciona da o mesmo erro que o QTCreator:


Segundo o make o erro esta no projeto do QTCreator.

O que você pode fazer é

  • deletar os dois programa do bin/
  • deletar a lib do bin/share
  • deletar o arquivo CmakeCache.txt
  • rodar cmake .
  • make procreader
  • make


Nas 2 tentativas de compilação os binários já estavam deletados e o resto é limpo pelo “make clean”.
Agora eu coloquei a versão do make.

É.

Teu CMake também tá bugado

Mas ainda resta um opção.

. vai pra pasta dos binários
. LD_LIBRARY_PATH=./share ./viewswap

ou

. LD_LIBRARY_PATH=./share ./gviewswap

Mas entendi.

Vou carregar a lib na mão, dentro dos programas.

Essa variável é para executar o binário “viewswap” mesmo definindo o local da biblioteca na " LD_LIBRARY_PATH" não encontra.

Deveria funcionar.

Você está na pasta bin ?
A biblioteca está na pasta bin/share ?

J.

Refiz uma parte e estou carregando a lib na mão.

Você quebraria o galho de testar ?