Prefetcher

Versiunea actuală a paginii nu a fost încă revizuită de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 27 ianuarie 2016; verificările necesită 7 modificări .

Prefetcher  este o componentă a sistemului de operare Microsoft Windows care accelerează procesul de încărcare inițială , precum și reduce timpul necesar lansării programelor. Prefetcher a apărut pentru prima dată în sistemul de operare Windows XP . De la Windows Vista , acesta a fost completat cu tehnologiile SuperFetch și ReadyBoost .

Descriere

Pornirea Windows și a aplicațiilor este însoțită de citirea în memorie și procesarea unui număr mare de fișiere. Adesea, același fișier este deschis de mai multe ori pentru a citi segmente diferite. Un astfel de acces irațional la fișiere necesită mult timp. Este mult mai eficient să accesezi fiecare fișier o singură dată, încărcând informații în RAM înainte ca programele să aibă nevoie de ele. Prefetcher ține evidența codului și datelor (inclusiv tabelul de fișiere master NTFS ) care sunt încărcate în timpul pornirii sistemului de operare și a aplicațiilor. Acesta colectează aceste informații în fișiere de urmărire pentru a optimiza codul și încărcarea datelor la rulările ulterioare.

Prefetcher urmărește lansarea fiecărei aplicații în primele 10 secunde. Monitorizarea procesului de pornire a sistemului este limitată în timp și se oprește în următoarele cazuri [1] :

Fișierele de urmărire sunt stocate în folderul Prefetch din directorul rădăcină Windows [2] (de obicei C:\WINDOWS\Prefetch). Încărcarea sistemului de operare este urmărită la un NTOSBOOT-B00DFAAD.pf. Lansarea programelor este urmărită în fișiere separate ale căror nume constau din numele fișierului executabil al programului lansat, o cratima, un hash hexazecimal al căii către fișierul executabil și extensia „.pf” (de exemplu: ). Când rulați aplicații care sunt un banc de lucru pentru alte componente (de exemplu: , , ), numele modulului încărcat este adăugat și la hash, ca urmare, sunt create diferite fișiere de urmărire pentru diferite componente (de exemplu: , ). EXPLORER.EXE-082F38A9.pfDLLHOST.EXEMMC.EXERUNDLL32.EXEMMC.EXE-0B0171A2.pfMMC.EXE-393F4B82.pf

Un rol important în funcționarea componentei Prefetcher îl joacă serviciul Task Scheduler .  „Task Scheduler” analizează datele care provin de la Prefetcher și scrie fișierele de urmărire în fișierul . Dacă serviciul nu rulează, Prefetcher nu va funcționa corect. „Task Scheduler” interacționează și cu programul Windows Disk Defragmenter . La fiecare trei zile, când computerul este inactiv , în folderul este creat un fișier care stochează o listă de fișiere și foldere utilizate la încărcarea sistemului de operare și la pornirea programelor. Defragmenterul de disc folosește informațiile din fișier pentru a plasa în mod optim acele fișiere fizic pe disc. %SystemRoot%\Prefetch%SystemRoot%\PrefetchLayout.iniLayout.ini

Personalizare

Setările Prefetcher sunt stocate în registrul de sistem sub HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameterstasta [3] . Parametrul EnablePrefetcher (DWORD) poate lua una dintre următoarele valori:

Modificarea parametrului EnablePrefetcherare efect imediat.

RootDirPath

Fișierul de încărcare preliminară a sistemului este localizat în directorul %SystemRoot%\Prefetch și calea către acesta este specificată de acest parametru.

Implicit = Preluare

Mituri

Există mai multe mituri comune despre Prefetcher:

Note

  1. Windows XP: Îmbunătățirile kernelului creează un sistem de operare mai robust, mai puternic și mai scalabil Arhivat 7 mai 2015 la Wayback Machine  - Din numărul din decembrie 2001 al revistei MSDN Magazine.
  2. 1 2 Ce este folderul de preluare preliminară? Arhivat 29 mai 2016 la Wayback Machine  - Ajutor Windows Vista.
  3. Îmbunătățiri ale kernelului pentru Windows XP Arhivat 24 septembrie 2010 la Wayback Machine  - Windows Hardware Developer Central. 13 ianuarie 2003.
  4. 1 2 3 Dezinformare și The Prefetch Flag Arhivat 15 august 2021 la Wayback Machine  - Bloguri MSDN. 25 mai 2005.

Vezi și

Link -uri