С времето Linux става все по-тежък. Софтуерът за Linux дистрибуциите

...
С времето Linux става все по-тежък. Софтуерът за Linux дистрибуциите
Коментари Харесай

Три лесни стъпки за ускоряване на всяка Linux дистрибуция

С времето Linux става все по-тежък. Софтуерът за Linux дистрибуциите стана комплициран и времето за зареждане на стратегиите се усилва. Но има метод за оптимизация на процесите, посредством която системата стартира да реагира по-бързо, а приложенията започват незабавно.

Тук ще разгледаме три напълно лесни метода за ускорение на всяка Linux дистрибуция. По-опитните консуматори сигурно познават тези способи, само че тук те са събрани на едно място. Предлаганите техники дават опция за приемане на доста ускорение реакцията на операционната система, както и на общото бързодействие. Предложените способи оказват изключително огромно въздействие на по-старите машини, само че и при актуалните компютри се вижда незначителен растеж на продуктивността.
Първа стъпка: инсталиране на prelink
Предварителното свързване е трансформация на изпълнимия файл, в която наготово са включени резултатите от динамичното свързване на споделените библиотеки. Да се опитаме да изясним нещата.



Преди доста години Linux приложенията бяха напълно опростени и за тяхната работа бяха нужни единствено няколко динамично зареждани систематични библиотеки. Това бяха a.out изпълнимите файлове, предлагащи пределна елементарност на програмирането и осъществяването.

При файловете a.out, авансово се знае на кой адрес ще бъдат заредени по повод паметта на процеса и на кои адреси ще се намират подпрограмите, функционалностите, променливите и така нататък Този метод обезпечава висока скорост, само че основава проблеми – какво ще стане, в случай че две библиотеки бъдат заредени на еднакъв адрес? Ето за какво бе въведен ELF форматът за изпълнимите файлове. Вече не се постановяваше изпълнимите файлове да избират адресите във виртуалната памет, където да се заредят и тази отговорност бе трансферирана на линкера (свързващия редактор). При ELF, адресите на зареждане на приложенията, библиотеките, функционалностите и т.н, се пресмятат при стартирането на програмата.

ELF бе за Linux една голяма стъпка напред и стана допустимо да се зареждат и започват огромен брой приложения, употребяващи едни и същи динамични библиотеки без да пораждат каквито и да било проблеми. Но от позиция на продуктивността, това е неуспех. Динамичното свързване е бързо и при потреблението единствено на няколко споделени библиотеки, когато няма закъснение. Но в случай че се започва тромаво приложение, употребяващо към и над 50 споделени библиотеки, забавянето става значително и може да доближи няколко и даже десетки секунди.

Prelink модифицира изпълнимите файлове по подобен метод, че в тях авансово са включени резултатите от нужните динамични свързвания. Тоест, авансово се знаят нужните адреси в паметта и не се постанова тяхното пресмятане при стартирането.

Възможността „prelink“ бе препоръчана от Джейкъб Джелинек още през 2004 година това се трансформира в един от най-удачните способи за повишение скоростта на пускане на приложенията. Достига се 50% ускорение, а при OpenOffice, KDE, Gnome, и повече.

Инсталирането на prelink, който е включен в общоприетите складове, може да стане както от софтуерния управител, по този начин и от командния ред.



Така да вземем за пример, за Debian GNU/Linux, Ubuntu и техните производни в терминала би трябвало да се вкара следното:
sudo apt install prelink
В Arch-подобните дистрибуции командата е:
sudo pacman -S prelink
А за семейството Fedora/Red Hat би трябвало да се вкара следното:
sudo yum install prelink
След като prelink бъде конфигуриран, е добре леко да се промени един от конфигурационните файлове. В случаен текстов редактор отваряме файла /etc/default/prelink с правата на админ, намираме реда „PRELINKING=unknown“ и заменяме думата „unknown“ на „yes“. Записваме файла.



Сега програмата е подготвена за работа. В терминала вкарваме следното:
sudo prelink -avfmR
Компютърът ще работи известно време, през което ще бъдат направени съответните връзки към нужните библиотеки и приложенията ще стартира да работят по-бързо.

Ако желаете да отмените предварителното свързване, задоволително е да въведете следното:
sudo prelink -ua
Важно :
prelink не може да обработва файловете от плана wine и няма по какъв начин да бъде интензивен софтуера за Оценка за съвместимост Windows.След инсталирането на нови приложения и/или библиотеки, добре е prelink да се извърши още веднъжВтора стъпка: Инсталираме и активираме preload
Това е дявол, който работи във фонов режим. Програмата натрупва статистика за най-често стартираните стратегии и кешира употребяваните от тях библиотеки. Това до известна степен форсира зареждането на приложенията.

Точно както prelink, по този начин и preload е включена в общоприетите складове и може да се конфигурира посредством софтуерния управител:



За феновете на командния ред, командата за Debian GNU/Linux фамилията е следната:
sudo apt install preload
За Arch Linux и неговите „роднини“:
sudo pacman -S preload
За Fedora/Red Hat и CentOS:
sudo yum install preload
Стандартните настройки са подобаващи за съвсем всички. Но в случай че някой желае да вникне в тънкостите, може да прегледа файла /etc/preload.conf.



Да уточним, че демонът не стартира работа незабавно, а откакто натрупа статистиката.

Друг значим миг е, че preload може значително да усили скоростта на зареждане на приложенията, само че единствено при положение, че има задоволително RAM. Минимумът, при който preload стартира да оказва въздействие е 2 GB. Това е минимумът: при по-малко оперативна памет preload може единствено да попречи.
Трета стъпка: усъвършенстваме потреблението на swap паметта
Около потреблението на swap от дълго време се водят горещи полемики. Но това е най-директния метод за усъвършенстване на продуктивността. Нека се абстрахираме от непознатите отзиви и да приемем, че swap е нужен и да се надяваме, че не се употребява като файл, а като дял.



Обикновено, размерът на swap региона е еднакъв на потенциала на оперативната памет. Само че това е по-актуално за компютри с от 2 до 8 GB оперативна памет. Ако имате 16 GB или повече, надали ще желаете да отрежете от потенциала на бързия си флаш диск толкоз доста дисково пространство и ще се ограничите с от 2 до 4 GB. А в случай че имате по-малко от 1 GB, никакъв swap няма да помогне.

По подразбиране, Linux стартира да употребява swap, когато оперативната памет се запълни до 40% . Но скоростта на работа на хард и даже флаш диска е доста по-бавна от тази на оперативната памет, а точно там се намира swap пространството. Когато стартира неговото потребление, цялата система стартира осезателно и дразнещо да се забавя. Ако имате 4 GB оперативна памет, то единствено стартирането на който и да е уеб браузър ще докара до потреблението на swap, а това забавя системата.

За благополучие, в Linux е напълно елементарно да се промени прага, при който стартира потреблението на swap .

Нека първо проверим, какъв е прагът на задействане на swap паметта:
cat /proc/sys/vm/swappiness
Ако излезе известие „60“, това значи, че 40% са за RAM паметта и 60% за swap – т.е., прагът за включване на swap раздела е 40%.

Лесно можем да променим този предел. Един доста добър компромис е swap разделът да се включи при 80 и даже повече % потребление на оперативната памет. Промяната на прага на 80% става благодарение на следната команда:
sudo sysctl -w vm.swappiness=20
Можем да се убедим, че всичко се е получило, като още веднъж въведем предходната команда:
cat /proc/sys/vm/swappiness
Ако в терминала се вижда „20“ – всичко се е получило.



Не могат да се дадат съответни препоръки за прага на включване на swap пространството. Всичко зависи от съответно изпълняваните стратегии и от самия компютър. Обикновено, идеалният баланс е в рамките от 10 до 30 %.

Описаните дотук три напълно лесни стъпки могат доста да ускорят която и да било GNU/Linux дистрибуция. Не бива да забравяме, че всяко сходно решение е въпрос на компромис. Всеки самичък би трябвало да се увери, кои тъкмо параметри форсират неговата система.

Важно конкретизиране: след рестартирането на компютърната система, настройките на прага на включване на swap файла се губят и се постанова описаните нагоре команди да се вкарат още веднъж, преди да е стартирането даже и едно приложение. Очевидно е, въпросната команда е по-удобно да бъда изпълнена автоматизирано след стартирането на системата. Но това е тематика за различен материал.
Източник: kaldata.com


СПОДЕЛИ СТАТИЯТА


КОМЕНТАРИ
НАПИШИ КОМЕНТАР