Как я могу узнать, загружает ли мое приложение в моей рабочей среде другие модули, библиотеки и т. Д.?

Я прочитал этот вопрос и его ответ о нескольких средах рабочего стола и о том, как они могут повлиять на производительность системы, и мне было интересно:

Как я узнаю, что я ' используя «приложение, которое загружает другие модули, библиотеки и т. д.»?

2
задан 13 April 2017 в 15:25

3 ответа

Я не на 100 процентов, если это то, что вы спрашиваете, но у меня некоторое время назад были установлены единство Gnome и kde, они, похоже, не влияли на производительность системы, но у меня было 2 набора приложений: один для гнома {единство - гном} и один для KDE, но большинство приложений были названы как Gedit Gparted и т. Д. Для gnome и Kate или Konquour для kde.

Но вы можете получить рабочие столы со всеми приложениями, но geanraly gnome и kde даже не очень хорошо будут выполнять программы друг друга, но было неудобно иметь все эти приложения, так что я просто сейчас использую Unity

[ 112] надеюсь, что это полезно ...

0
ответ дан 13 April 2017 в 15:25

При установке программ вы можете посмотреть их требования. Я не думаю, что вы можете показать это в Ubuntu Software Center, но когда вы устанавливаете программы с помощью терминала, используя apt-get, он покажет вам требования, которые он устанавливает, и спросит, все ли в порядке. Если они включают другое DE, не устанавливайте их.

Большинство приложений KDE либо начинаются с K, либо имеют выделенное K в названии (то есть Amarok, Koffice и т. Д.). Я НЕ ДУМАЮ, что другие DE действительно необходимы, чтобы держаться подальше, так как я ДУМАЮ, что они в основном используют GTK, что и использует Gnome.

Чтобы узнать, установлен ли KDE, просто откройте терминал и используйте следующую команду:

sudo apt-get remove kde-runtime

Если он выдаст ошибку и скажет Package kde-runtime-data is not installed, so not removed, вы в порядке. Не о чем беспокоиться. Если вместо этого он показывает кучу программ, которые установлены и больше не требуются, посмотрите на ту часть, где написано The following packages will be REMOVED. Это программы, которые вам придется заменить (если вы знаете, что это такое, и вы их установили). Запишите их и продолжайте удаление.

Если вам нужно удалить kde-runtime, обязательно запустите sudo apt-get autoremove afterwords, которое очистит все остальные ненужные файлы, установленные рядом с KDE.

Сказав все это, снижение производительности при запуске программ из разных DE на современных компьютерах оказывается непропорциональным. Я всегда использую Gnome, но я устанавливаю программы KDE с опрометчивой энергией, когда они лучше, чем их коллеги из Gnome, и никогда не замечали большой разницы.

0
ответ дан 13 April 2017 в 15:25

В общем, вы можете искать в Synaptic manager , выбрав меню SECTIONS, имея GNOME Desktop, KDE ] desktop, amd XFCE подразделы окружения рабочего стола, с указанием приложений по умолчанию на основе QT или GTK .

И, есть раздел Library , общий раздел, показывающий библиотеки рабочего стола Gnome и Kde . Если вы можете взглянуть на описание некоторых из них, вы найдете сходство в некоторых QT с GTK и т. Д.

Gnome и KDE не имеют общих библиотек, но некоторые общие модули, такие как KERNEL и драйверы, но для них основаны разные интерфейсы, такие как сетевые менеджеры, звуковое меню и т. Д.

Зависимости приложений, основанных на DE, хорошо объяснены в выше, ответе reverendj1 . Кроме того, вы можете использовать такие утилиты, как apt-cache , dpkg , dpkg-query для получения подробной информации о пакете, его зависимостях и библиотеках времени выполнения.

И, указывая на несколько модулей Desktops или использование библиотеки, простыми словами, если у вас установлены KDE и GNOME , при запуске приложения KDE в среде Gnome инициализируется библиотека KDE и наоборот для улучшения его интерфейса, интеграции и т. д. Таким образом, вы будете иметь две разные функции Core Library . Если у вас достаточно памяти на них обоих, попробуйте весело.


Существуют такие команды, как

ldd - >>

, который печатает общие библиотеки, необходимые для каждого программа или общая библиотека, указанная в командной строке.

Например

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.

Например

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) +++
0
ответ дан 13 April 2017 в 15:25

Другие вопросы по тегам:

Похожие вопросы: