Schijfbeheer

Hoe en wanneer de I/O-planner in Linux te wijzigen

Hoe en wanneer de I/O-planner in Linux te wijzigen
De I/O Scheduler is een fascinerend onderwerp; Vooraf gaan we in op hoe en wanneer de I/O-planner moet worden aangepast; laten we een beter begrip hebben van wat I/O-planners doen. Een Linux I/O-planner regelt hoe de kernel de schijf vastlegt, leest en schrijft. Leidinggevenden zijn sinds ongeveer 2 jaar in staat om het roostersysteem aan te passen.6 kernels, waardoor ze hun frameworks kunnen aanpassen aan hun exacte vereisten. Lange tijd werd gedacht dat schijftoegankelijkheid de relatief trage manier van gegevenstoegang was. Ondanks de toenemende prevalentie van Flash en Solid State-ruimte, is het ophalen van gegevens van schijf trager dan het verzamelen van informatie uit RAM. Dit geldt met name als het raamwerk is gebaseerd op draaiende schijven.

Waarom Planner gebruiken:

Aangezien standaard draaiende schijven informatie schrijven op basis van plaatsen op een draaiend plateau, is dit het geval. Bij het benaderen van gegevens van een draaiende schijf, moet de eigenlijke schijf de platters naar een specifieke positie draaien zodat de informatie kan worden gelezen. Dit wordt "zoeken" genoemd omdat het veel langer kan duren in termen van berekening. I/O-planners zijn bedoeld om u te helpen het meeste uit uw schijftoegangsrechten te halen. Vroeger deden we hetzelfde door I/O-transacties te combineren en ze naar aangrenzende schijflocaties te sturen. De drive hoeft niet eens zoveel te "zoeken" wanneer verzoeken zijn gegroepeerd in aangrenzende delen van de schijf, wat de gemiddelde responstijd voor operationele schijfactiviteiten verbetert. Er zijn veel I/O-planneroplossingen beschikbaar op de huidige Linux-architecturen. Elk van deze heeft zijn systeem voor het regelen van schijftoegangsverzoeken. Dit artikel leert hoe u de huidige planner in uw systeem kunt controleren en hoe u uw planner kunt wijzigen terwijl u op het Linux-besturingssysteem werkt.

Soorten planners:

Er lijken 3 soorten planners te zijn om uit te kiezen, elk met zijn eigen voordelen in het Linux-besturingssysteem. Dus, hier is de lijst en uitleg van elke planner:

Controleer huidige planner:

Voordat u verder gaat, moet u op de hoogte zijn van de I/O-planner die is geconfigureerd in uw huidige Linux-systeem. Op het moment van implementatie gebruikten we de Ubuntu 20.04 Linux-systeem, dus onze planner zal zijn. Het is mogelijk dat uw Linux-systeem een ​​andere I/O-planner in het systeem heeft geconfigureerd. Log dus in vanaf uw huidige Linux-systeem om het te controleren. Start nu de terminal-shell met de eenvoudige sneltoets "Ctrl+Alt+T"."Je kunt proberen de terminal-shell te openen met behulp van het activiteitenbalkgebied op je Linux-bureaublad. Nu is de opdrachtshell-terminal geopend, we kunnen eraan gaan werken. Allereerst moeten we inloggen als sudo-gebruiker vanaf de terminal om efficiënt en zonder onderbreking te werken. Typ dus de opdracht "su" in de terminal om in te loggen. Het zal je om het wachtwoord van je sudo-account vragen om in te loggen. Typ het sudo-accountwachtwoord en druk op de "enter" -toets van uw typemachine.

$ zo

Nu is het tijd om de I/O-planner van ons Linux-systeem te controleren en te identificeren. Zoals u weet, werken we momenteel aan Ubuntu 20.04 Linux-systeem om in overeenstemming te zijn, en we moeten het controleren door het plannerbestand via zijn pad te lezen. We moeten dus de onderstaande cat-instructie in de shell-terminal uitproberen, samen met de bestandslocatie via het pad en op de knop "Enter" drukken vanaf de typemachine van uw computer.

# cat /sys/block/sda/queue/scheduler

De onderstaande afbeelding toont de uitvoer als "[mq-deadline] geen", wat betekent dat ons apparaat een deadline-planner met meerdere wachtrijen bevat. Het is een apparaatspecifieke aanpassing van de deadline I/O-planner. Een solide allrounder met een laag CPU-gebruik.

Opmerking: U moet duidelijk maken dat de multi-wachtrij I/O-planners de enige I/O-planners zijn die worden aangeboden in de Ubuntu Eoan Ermine 19.10 evenals hals over kop.

De I/O-planner wijzigen:

Als een Linux-systeemgebruiker zijn/haar I/O-planner wil wijzigen in: "Kyber", ze moeten eerst het "kyber" -pakket in hun Linux-systeem installeren in de twee onderstaande stappen. Men moet het onderstaande sudo-commando uitvoeren met het trefwoord "modprobe" met de naam van een planner als "kyber-iosched.”

# sudo modprobe kyber-iosched

De tweede stap is om hetzelfde "cat" -commando uit te voeren dat in een van de bovenstaande commando's wordt genoemd om het te installeren.

# cat /sys/block/sda/queue/scheduler

Nu is de "kyber" succesvol geconfigureerd. Nu kunt u "kyber" inschakelen met behulp van de onderstaande "echo" planneropdracht samen met de "sudo" en "tee" trefwoorden waaraan het pad van een planner is gekoppeld. De uitvoerafbeelding presenteert de ingeschakelde planner "kyber.”

# echo “kyber” | sudo tee /sys/block/sda/queue/scheduler

De onderstaande output laat zien dat de "kyber" is ingesteld op standaard.

# cat /sys/block/sda/queue/scheduler

Om de planner te wijzigen in de "bfq" planner, installeer deze met behulp van de onderstaande opdracht:.

# sudo modprobe bfq

Voer nu hetzelfde "kat" -commando uit.

# cat /sys/block/sda/queue/scheduler

Nu de "bfq" is geïnstalleerd, schakel deze in met dezelfde "echo" -opdracht.

# echo “bfq” | sudo tee /sys/block/sda/queue/scheduler

Controleer de standaard "bfq" -planner via het "cat" -commando.

# cat /sys/block/sda/queue/scheduler

Conclusie:

Dit zelfstudieartikel heeft een eenvoudige manier behandeld om de I/O-planner te wijzigen met behulp van twee verschillende planners. We hebben besproken waarom het systeem de planner wil wijzigen, ik hoop dat het voor u werkt.

Strijd om Wesnoth Zelfstudie
The Battle for Wesnoth is een van de meest populaire open source strategiespellen die je op dit moment kunt spelen. Dit spel is niet alleen al heel la...
0 A.D. zelfstudie
Van de vele strategiespellen die er zijn, 0 A.D. slaagt erin om op te vallen als een uitgebreide titel en een zeer diep, tactisch spel ondanks dat het...
Unity3D-zelfstudie
Inleiding tot Unity 3D Unity 3D is een krachtige game-ontwikkelingsengine. Het is platformoverschrijdend, zodat je games voor mobiel, internet, deskto...