Como posso saber se meu aplicativo no ambiente de área de trabalho está carregando outros módulos, bibliotecas etc. do DE?

2

Eu li esta questão e é responder sobre vários ambientes de área de trabalho e como eles podem afetar o desempenho do sistema e estavam se perguntando:

Como sei se estou usando um "aplicativo que carrega os outros módulos, bibliotecas etc. do DE"?

    
por jimchristie 02.07.2012 / 21:40

3 respostas

3

De maneira geral, você pode pesquisar em gerenciador Synaptic selecionando o menu SECTIONS , com áreas de trabalho GNOME Desktop, KDE , amd XFCE ambiente de área de trabalho, indicando os aplicativos padrão ou < base strong> QT ou GTK .

E há a seção Biblioteca , uma seção compartilhada que mostra as bibliotecas das áreas de trabalho Gnome e Kde . Se você puder dar uma olhada na descrição de alguns deles, você encontrará similaridade em alguns QT's com GTKs, etc.

O Gnome e o KDE não possuem Bibliotecas compartilhadas, mas alguns módulos comuns como KERNEL e drivers, mas diferentes frontends como gerentes de rede, som menu, etc para eles com base em DE.

Dependências de aplicativos baseados em DE são explicadas de maneira adequada na resposta acima do reverendj1 . Além disso, você pode usar utilitários como apt-cache , dpkg , dpkg-query para obter informações detalhadas sobre pacotes e suas dependências e bibliotecas de tempo de execução.

E apontando para vários módulos do Desktops ou uso da biblioteca, em palavras simples, se você tiver o KDE e o GNOME instalado, ao executar o aplicativo KDE no ambiente Gnome, inicializará Biblioteca do KDE e vice-versa para polir sua interface, integração, etc. Portanto, você terá duas funções diferentes da Biblioteca principal em execução. Se você tem uma memória considerável para os dois, é muito divertido tentar.

Existem comandos como

ldd -->>

which prints the shared libraries required by each program or shared library specified on the command line.

Por exemplo

ldd -u /usr/bin/nautilus
Unused direct dependencies:
    linux-vdso.so.1
    /usr/lib/libzeitgeist-1.0.so.1
    /usr/lib/x86_64-linux-gnu/libgailutil-3.so.0
    /usr/lib/libgnome-desktop-3.so.2
    /usr/lib/x86_64-linux-gnu/libX11.so.6
    /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0
    /usr/lib/x86_64-linux-gnu/libnotify.so.4
......

ltrace -->>

ltrace  is  a  program  that simply runs the specified command until it
       exits.  It intercepts and records the dynamic library calls  which  are
       called  by  the  executed process and the signals which are received by
       that process.  It  can  also  intercept  and  print  the  system  calls
       executed by the program.

Por exemplo

ltrace  ping
__libc_start_main(0x4014a0, 1, 0x7fffdbad54a8, 0x405b00, 0x405b90 <unfinished ...>
socket(2, 3, 1)                                                                                        = 3
__errno_location()                                                                                     = 0x7f0ed1c7a6a0
getuid()                                                                                               = 0
setuid(0)                                                                                              = 0
getopt(1, 0x7fffdbad54a8, "h?VQ:I:M:aUc:dfi:w:l:S:np:qrs:vL"...)                                       = -1
fwrite("Usage: ping [-LRUbdfnqrvVaAD] [-"..., 1, 251, 0x7f0ed1a6d180Usage: ping [-LRUbdfnqrvVaAD] [-c count] [-i interval] [-w deadline]
            [-p pattern] [-s packetsize] [-t ttl] [-I interface]
            [-M pmtudisc-hint] [-m mark] [-S sndbuf]
            [-T tstamp-options] [-Q tos] [hop1 ...] destination
)                                  = 251
exit(2 <unfinished ...>
+++ exited (status 2) +++
    
por atenz 05.07.2012 / 19:44
2

Ao instalar programas, você pode analisar seus requisitos. Eu não acho que você possa mostrar isso no Ubuntu Software Center, mas quando você instalar programas com o terminal, usando apt-get , ele mostrará os requisitos que está instalando e perguntará se está tudo ok. Se eles incluem outro DE, não os instale.

A maioria dos aplicativos do KDE começa com K, ou tem um K enfatizado em seu nome (ou seja, Amarok, Koffice, etc). Eu não acho que os outros DEs são realmente necessários para afastar, como eu acho que eles usam principalmente o GTK, que é o que o Gnome usa.

Para ver se alguma coisa instalou o KDE, simplesmente abra um terminal e use o seguinte comando:

sudo apt-get remove kde-runtime

Se ocorrer um erro e disser Package kde-runtime-data is not installed, so not removed , você é bom. Nada para se preocupar. Se, em vez disso, ele mostrar vários programas instalados e não mais necessários, veja a parte em que diz The following packages will be REMOVED . Estes são os programas que você terá que substituir (se você souber quais são e os instalou). Anote esses e continue com a desinstalação.

Se você precisar desinstalar o kde-runtime, certifique-se de executar sudo apt-get autoremove afterwords, que limpará todas as outras sujidades desnecessárias instaladas junto com o KDE.

Depois de dizer tudo isso, o desempenho obtido ao executar programas de diferentes DEs é desproporcional nos computadores modernos. Eu sempre uso o Gnome, mas eu instalo os programas do KDE com um abandono imprudente quando eles são melhores que os do Gnome, e nunca notei muita diferença.

    
por reverendj1 05.07.2012 / 18:12
0

Eu não sou 100% se você está perguntando, mas eu tive a unidade Gnome e o kde instalados há algum tempo eles não pareciam afetar o desempenho do sistema, mas eu tinha 2 conjuntos de aplicativos: um para o gnome {unity is gnome} e um para O KDE, mas a maioria dos aplicativos foram obviamente nomeados como Gedit Gparted etc para o gnome e o Kate ou o Konquour para o kde.

Mas você pode obter os desktops sem todos os aplicativos, mas geanraly gnome e kde nem executariam os programas uns dos outros muito bem, mas foi um saco ter todos esses aplicativos, então eu uso apenas a unidade agora

espero que isso seja útil ...

    
por Mark Kirby 05.07.2012 / 18:15