- Priekšielāde paātrina zābaks y progr .PF izsekošanas datu saglabāšana; SuperFetch/SysMain iepriekšēja ielāde RAM atmiņā, pamatojoties uz paradumiem.
- Tie parasti palīdz ar cietajiem diskiem; SSD Tā ietekme ir mazāka, un dažreiz ieteicams atspējot SysMain.
- .PF failiem ir augsta kriminālistiskā vērtība: kas tika izpildīts, kad, no kurienes un ar kurām nodaļām.
Ja jau kādu laiku lietojat operētājsistēmu Windows , iespējams, esat dzirdējuši par Prefetch un SuperFetch (tagad SysMain). Lai gan šīs funkcijas pastāv jau gadiem ilgi, tās joprojām rada diskusijas to ietekmes uz veiktspēju dēļ , īpaši sistēmās ar SSD diskiem, lielām multimediju bibliotēkām vai datoriem, kas tiek izmantoti ļoti specifiskiem uzdevumiem. Šajā rakstā mēs atdalām mītu no realitātes un visu ievietojam mūsdienu kontekstā.
Mēs sākam ar pieņēmumu, ko daudzi piekrīt: ņemot vērā pašreizējo aparatūras uzlabojumu stāvokli un Windows briedumu, ir pārsteidzoši, ka joprojām pastāv noteiktas "slikti pilnveidotas" darbības . Ir gadījumi, kad sistēma nekritiski izmanto kešatmiņu (piemēram, izveidojot pēdas instalētājiem, kurus palaižat tikai vienu reizi), vai arī ieslēdzas SuperFetch pakalpojums, piekļūstot milzīgiem failiem un izraisot diska aktivitātes pieaugumu. Apskatīsim, nepārspīlējot, ko dara katra tehnoloģija, kad tā ir noderīga un kad vislabāk to pielāgot vai atspējot.
Kas ir Prefetch un SuperFetch operētājsistēmā Windows?
Prefetch ir funkcija, kas tika ieviesta operētājsistēmā Windows XP un joprojām ir pieejama operētājsistēmās Windows 10 un 11. Tās mērķis ir paātrināt sistēmas un lietojumprogrammu startēšanu , saglabājot failu piekļuves un atkarību informāciju atkārtotai izmantošanai nākamajās palaišanas reizēs. Šī informācija tiek saglabāta mapē C:\Windows\Prefetch kā faili ar paplašinājumu .PF.
Savukārt SuperFetch iet soli tālāk: tas apgūst jūsu lietošanas paradumus un iepriekš ielādē bieži atvērto lietotņu datus un bināros failus RAM atmiņā, lai tās reaģētu ātrāk. Jaunākās Windows 10 versijās (kopš 1809. versijas) pakalpojums tiek parādīts ar nosaukumu SysMain , lai gan tā darbības fokuss paliek nemainīgs.
Ir svarīgi uzsvērt, ka abas funkcijas ietver papildu lasīšanas un rakstīšanas darbības . Prefetch reģistrē izsekošanas datus katrā lietojumprogrammā un katrā sāknēšanas reizē; SuperFetch/SysMain uztur atmiņu siltu, lai paātrinātu regulāras palaišanas. Pielāgota tā palīdz; piemērota nekritiski, tā var ģenerēt aktivitātes, kas ne vienmēr ir vērtīgas.

Programmatūras iepriekšēja ielāde salīdzinājumā ar aparatūras iepriekšēju ielādi (CPU)
Ir svarīgi nošķirt programmatūras priekšielādi (operētājsistēmas vai kompilatora priekšielādi) un aparatūras priekšielādi (procesora priekšielādi). Programmatūras līmenī Windows analizē piekļuves un paredz iespējamos datus un instrukcijas , sagatavojot tās, lai samazinātu sāknēšanas vai lietojumprogrammu palaišanas latentumu.
Šī koncepcija pastāv arī kompilācijā: piemēram, GCC ir primitīvs `__builtin_prefetch` , kas ļauj aparatūrai iepriekš pieprasīt piekļuvi noteiktiem datiem. Šie pieprasījumi var izlīdzināt atmiņas piekļuves sastrēgumus, ja modelis ir relatīvi paredzams.
CPU x86 arhitektūrās ir tādas instrukcijas kā PREFETCH un īpaši mehānismi, kas bez operētājsistēmas iejaukšanās mēģina iepriekš nogādāt datus vai instrukcijas dažādos kešatmiņas līmeņos. Tā ir prognozēšanas spēle: ja jums ir taisnība, latentums samazinās; ja jūs kļūdāties, jūs piesārņojat kešatmiņu.
Šī pieeja ir tikpat sena, cik efektīva: Intel 8086 jau bija 6 baitu instrukciju priekšielādes rinda , bet Motorola 68000 — 4 baitu. Mūsdienās centrālā procesora priekšielādes rīki ir daudz sarežģītāki, tie atšķir secīgus modeļus un soļus , un tos var atspējot dažās uzlabotās BIOS/UEFI. Piezīme: to nevajadzētu jaukt ar vecāku programmaparatūru IDE priekšielādes režīmu , kas attiecās uz IDE disku optimizāciju.
Prefetch mape, .PF faili un Windows darbības princips
Mapē C:\Windows\Prefetch tiek glabāti faili ar paplašinājumu .PF, kas saistīti gan ar startēšanas programmām, gan atsevišķām lietojumprogrammām. Katru reizi, kad palaižat programmu, Windows var izveidot vai atjaunināt atbilstošo prefetch failu (piemēram, CMD.EXE-087B4001.PF ) un atkārtoti izmantot šo informāciju turpmākajām palaišanas reizēm.
PF faili satur divas galvenās sadaļas: galveni ar noderīgiem metadatiem (izpildāmā faila nosaukums, ceļš, laika zīmogi, piemēram, izveide, pēdējā piekļuve un modifikācija, kā arī izpildes skaitītājs) un otro daļu ar aptuveni 10 sekunžu "momentuzņēmumu" ar failiem un DLL, kas skarti šajā pirmajā izpildes posmā.
Šiem failiem ir identificējams paraksts, kas atvieglo to atkopšanu kriminālistikas analīzē. Binārā izteiksmē identifikators SCCA parādās ar galveni, ko var attēlot kā 11 00 00 00 53 43 43 41. Tā kā nav oficiālas "kājenes", izvelkot no nepiešķirtas vietas, ir normāli iegūt zināmu "papildinājumu", kas tiek atmests, validējot saturu.
Lai gan daudzi cilvēki domā, ka "Prefetch mapes dzēšana" paātrina datora darbību, ieguvums ir tikai neliels un īslaicīgs . Patiesībā pirmā palaišana pēc dzēšanas būs lēnāka (Windows ir jāapgūst un jāpārveido mape), un palaišanas laikā sāknēšanas informācijas atjaunošana var aizņemt ilgāku laiku.
Kā iespējot vai atspējot Prefetch un SuperFetch (SysMain)
Prefetcher konfigurācija tiek kontrolēta reģistrā: HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Memory Management\\PrefetchParameters . Tur jūs atradīsiet EnablePrefetcher vērtību (dažos tekstos tā parādās kā EnablePrefetch) ar četrām opcijām.
- 0 = Atspējots pilnībā.
- 1 = Tikai lietojumprogrammu iepriekšēja ielāde.
- 2 = Tikai starta iepriekšēja uzlāde no sistēmas.
- 3 = Startēšana un lietojumprogrammas (optimālā un noklusējuma vērtība).
Lai pārvaldītu SuperFetch operētājsistēmā Windows 10/11, atveriet services.msc un meklējiet SuperFetch (mūsdienu versijās tas tiek parādīts kā SysMain ). No tā īpašībām varat mainīt startēšanas veidu uz Atspējots un, ja nepieciešams, apturēt pakalpojumu.
Pastāv plaši izplatīts uzskats, ka Windows automātiski nosaka SSD diskus un atspējo Prefetch/SuperFetch . Praksē tas ne vienmēr notiek visās ierīcēs vai versijās, tāpēc daudzi SSD lietotāji izvēlas tos manuāli atspējot pēc tam, kad ir novērtējuši to faktisko ietekmi.
HDD pret SSD: kad tie palīdz un kad traucē
Mehāniskajiem cietajiem diskiem (HDD), kur piekļuves latentums ir augsts, Prefetch un SuperFetch parasti ir noderīgi, jo tie samazina diska gaidīšanas laiku, nodrošinot datu pieejamību. Tāpēc sistēmās ar HDD diskiem vairumā gadījumu ir saprātīgi saglabāt EnablePrefetcher=3 .
Izmantojot SSD diskus, piekļuves laiki ir tik īsi, ka iepriekšējas ielādes lietderība ievērojami samazinās . Saglabājot aktīvu SysMain, tas var konkurēt ar citām darba slodzēm un atkarībā no situācijas radīt nevajadzīgu aktivitāti. Daži dod priekšroku iestatīt EnablePrefetcher=0 un atspējot SysMain; citi atstāj visu noklusējuma iestatījumos un uzrauga veiktspēju. Galvenais ir novērot sistēmas faktisko darbību.
Piemēram, Windows Server 2003 sistēmās noklusējuma vērtība bija 2 (tikai sāknēšana) , kas ilustrē to, ka Microsoft pielāgoja dažādus profilus atkarībā no produkta un tā tipiskā lietošanas gadījuma.
Paturiet prātā, ka mapes Prefetch notīrīšana vai tās iestatījumu maiņa palēninās lietotņu sākotnējo palaišanu , un sistēma pakāpeniski atjaunos .PF failus. Ja jūsu mērķis ir maksimāli palielināt centrālā procesora noslodzi, varat to izmēģināt; pretējā gadījumā atstājiet to tādu, kāds tas ir, un koncentrējieties uz nozīmīgāku problēmu novēršanu.
Windows indeksēšana, alternatīvas un produktivitāte
Vēl viena ar veiktspēju saistīta problēma ir indeksēšana . Windows indeksētājs atvieglo meklēšanu, taču tas regulāri raksta un lasa datus; ja vēlaties pielāgot tā darbību, pārskatiet indeksēšanas opcijas.
Viss izmanto atšķirīgu indeksēšanas metodi un parasti tiek uzskatīts par ievērojami ātrāku NTFS failu sistēmās , kā arī patērē maz resursu. To var integrēt uzdevumjoslā, izmantojot kopienas projektus, nodrošinot ātru un netraucētu meklēšanas pieredzi.
Neatkarīgi no tā, kuru izvēlaties, pamatojums ir līdzīgs Prefetch/SysMain pamatojumam: izmērīt faktisko ietekmi uz datoru un noteikt prioritātes produktivitātei. Dažās ierīcēs indeksēšanas atspējošana un paļaušanās uz Everything var būtiski uzlabot situāciju.
Bieži sastopamas problēmas un reāli gadījumi
Viena no darbībām, kas dažus lietotājus kaitina, ir Windows .PF failu ģenerēšana vienreiz lietojamiem izpildāmiem failiem, piemēram, setup.exe . Praksē ir pamatoti apšaubīt to lietderību: jūs kaut ko instalējat vienreiz, un šis priekšielādes fails reti būs nepieciešams vēlreiz. Šis diskriminācijas trūkums ir īpaši pamanāms ar vienreiz lietojamām bibliotēkām.
Ir arī novērots, ka, atjauninot programmas, sistēma var uzkrāt vecāku versiju pēdas, pilnībā neiztīrot ierakstus. Tā pat atstāj atinstalētu lietojumprogrammu pēdas, piepildot Prefetch mapi ar bezjēdzīgām atliekām.
Lai tiktu galā ar atlikušajiem failiem pēc atinstalēšanas, ir pieejami tādi rīki kā Bulk Crap Uninstaller (BCUninstaller) , kas, lai gan sākumā prasa nelielu apguvi, palīdz atrast atlikušos failus un var palīdzēt noņemt saistītos datus, tostarp dažus priekšielādes failus, kuriem vairs nav jēgas.
Īpaši sarežģīti scenāriji rodas, izmantojot SuperFetch/SysMain: datoros ar milzīgām mūzikas bibliotēkām (piemēram, simtiem GB MP3 failu ) vai milzīgiem Outlook PST failiem var notikt stundām ilgas disku apstrādes sesijas , vairākas reizes nedēļā. Pakalpojuma apturēšana parasti to aptur, taču tas ne vienmēr apstājas nekavējoties.
Bieži uzdots jautājums ir par to, vai pastāv izslēgšanas saraksts , kas neļautu SuperFetch piekļūt noteiktiem ceļiem vai lietojumprogrammām (Outlook, iTunes, multivides kolekcijām utt.). Operētājsistēmā Windows nav iekļauta oficiāla detalizēta izslēgšanas mehānisma SysMain, tāpēc, ja darbība ir traucējoša, praktisks risinājums parasti ir pakalpojuma atspējošana vai tā darbības jomas ierobežošana ar vispārīgām politikām.
Prefetch failu tiesu medicīnas vērtība
Papildus veiktspējai, .PF faili ir ārkārtīgi interesanti forenzikas jomā. To saturs var atklāt, kas tika izpildīts, kad, no kurienes un cik reižu . Atkarību momentuzņēmums parāda ceļus uz DLL un failiem, kuriem piekļūts tūlīt pēc pirmās izpildes.
Tas ļauj atklāt netradicionālus vai slēptus ceļus (piemēram, Excel failu, kas atvēra failu "one.xls", kas atrodas TrueCrypt sējumā, vai neparastas direktorijus System32). Analītiķi bieži atrod ļaunprātīgus rīkus, kas paslēpti maskētās mapēs, pateicoties .PF faila paplašinājumam.
Priekšielādes ceļi arī palīdz identificēt lietotājus un izpildes avotus . Šie ceļi var atklāt kontus mapē C:\\Documents and Settings (XP) vai C:\\Users (Vista/7/10/11) vai piekļuvi no ārējās atmiņas . \\DEVICE\\HARDDISKVOLUME1\\ nav tas pats, kas tādi ieraksti kā \\DEVICE\\HARDDISK\\DP(1)0-0+D\\, kas ir raksturīgi USB diskdziņiem.
Ja MFT laika zīmogi ir manipulēti (piemēram, izmantojot laika zīmogu veidošanas metodes ), .PF metadati var atklāt patiesību. Pirmais un pēdējais piekļuves laiks kopā ar izpildes skaitītāju atklāj binārā faila faktisko aktivitāti , pat ja ir mēģināts to slēpt.
.PF faili arī palīdz profilēt lietotāja tipu . Ja parādās Python , Perl, IdaPro, VMware vai tādu utilītu kā nmap, Metasploit vai netcat pēdas , mēs varam secināt par tehniskāku profilu (vai potenciāli aizskarošu rīku klātbūtni). Turpretī, ja dominē pārlūkprogrammas, e-pasta klienti un sociālās lietotnes, lietošanas modelis ir atšķirīgs.
Rīki Prefetch analīzei un atgūšanai
Starp klasiskajiem rīkiem izceļas WinPrefetchView (NirSoft), kas uzskaita .PF failus ar metadatiem un ļauj eksportēt tos HTML formātā, kā arī Marka Makinona utilītas Prefetch_info.exe un Prefetch_parse_gui.exe , kas pareizi parsē gan galveni, gan NTFS/MFT informāciju.
Ja mape Prefetch tika iztīrīta (apzināti vai apkopes nolūkos), joprojām ir iespējams atgūt izdzēstos .PF failus , meklējot to parakstu nepiešķirtā vietā. Tā kā tiem nav kājenes, ir normāli, ka faila veidošanas laikā tiek ievilkti papildu baiti , kas tiek atmesti pēc to integritātes pārbaudes.
Praktisks brīdinājums: dažas lietotnes neraksta savu .PF failu, kamēr tās netiek aizvērtas . Piemēram, ja palaižat netcat plkst. 13:00 14. datumā un aizverat to plkst. 15:00 15. datumā, prefetch tiek izveidots pēc aizvēršanas, izmetot laika skalu . Turklāt programmas startēšanas mapē neģenerē atbilstošo .PF failu.
Pareiza interpretācija un kļūdaini pozitīvi rezultāti
Dažas pēdas ir viegli nepareizi interpretēt. .PF failu redzēšana no DEFRAG.EXE vai DFRNTFS.EXE ne vienmēr nozīmē, ka lietotājs ir mēģinājis dzēst pēdas; pats uzdevumu plānotājs uzsāk defragmentācijas procesus, lai reorganizētu Layout.ini ierakstus , palielinot šo .PF failu skaitītāju.
Arī failu skaits mapē Prefetch ir indikatīvs. Windows ierobežo .PF failu saglabāšanu higiēnas apsvērumu dēļ, un to daudzums un dažādība var liecināt par to, vai sistēma ir jauna (maz lietotņu) vai arī tā ir intensīvi izmantota ilgu laiku.
Ja .PF faili pilnībā trūkst, iespējams, kāds tos ir izdzēsis vai arī ir iestatīta reģistra ieraksta vērtība EnablePrefetcher=0 . Operētājsistēmās Windows XP/Vista/7 noklusējuma vērtība bija 3 (lietotnes un sāknēšana), savukārt operētājsistēmā Windows Server 2003 tā parasti bija 2 (tikai sāknēšana).
Labas apkopes prakses
Izvairieties no kompulsīvas Prefetch tīrīšanas: Windows pārvalda mapi un iztīra vecos ierakstus. Visu .PF failu dzēšana katru nedēļu reti palīdz un var radīt latentumu nākamajā palaišanas reizē vai pirmajā palaišanas reizē.
Ja jūs uztrauc veco versiju vai vairs neizmantoto lietotņu pēdas, izvēlieties uzlabotus atinstalētājus (piemēram, BCUninstaller), kas atrod atlikušos failus un veic rūpīgāku tīrīšanu. Tas samazina "troksni" Prefetch, netraucējot sistēmas apguvei.
Ja SysMain izraisa traucējošu darbību (īpaši datoros ar ierobežotu RAM vai lielām bibliotēkām ), mēģiniet apturēt pakalpojumu un novērot to. Ja sistēma atgriežas normālā stāvoklī, apsveriet iespēju atspējot SysMain un saglabāt tikai sāknēšanas/lietojumprogrammu iepriekšielādi vai samazināt tā darbības jomu.
Un, ja meklēšana jūs dzen izmisumā, apsveriet iespēju atspējot Windows indeksēšanu un izvēlēties “Viss ar uzdevumjoslas integrāciju”. Tas ir vienkāršs veids, kā palielināt ātrumu , neveicot pārāk daudz izmaiņu sistēmā.
Kaislīgs rakstnieks par baitu pasauli un tehnoloģiju kopumā. Man patīk dalīties savās zināšanās rakstot, un tieši to es darīšu šajā emuārā, parādot visu interesantāko informāciju par sīkrīkiem, programmatūru, aparatūru, tehnoloģiju tendencēm un daudz ko citu. Mans mērķis ir palīdzēt jums vienkāršā un izklaidējošā veidā orientēties digitālajā pasaulē.
