Ang mga modernong aparatong pang-inhinyeriya na pang-industriya ay umere mula sa mga nabibitbit na mga medikal na monitor hanggang sa industriyal na mga sensor na ⁇ i ⁇ demand operating system na gumagawa ng higit sa mga gawain; kailangan nilang maingat na irasyon ang bawat milliwatt. Habang ang hardware ay lumiliit at umaasal sa paggawa, ang OS ay naging sentral na arbitraryong pang-in ng enerhiya. Ang pag-sign ng isang OS na nagreresulta sa pagguhit ng kuryente nang hindi ikinokompromiso o pagkamaaasahan ay isang komplikado ngunit mahalagang disiplina. Ang artikulong ito ay isang pang-kateg pang-inam na pang-halagang pang-halagang pang-inampanyayari ng mga prinsipyo, tekniks, tekniks, pamamaraan, at lumilitaw na nagbibigay ng mga estratehiya na nagbibigay ng mga estratehiya na nagbibigay ng mga estratehiyang nagbibigay ng mga pamamaraan na nagbibigay ng mga pamamaraan na nagbibigay ng mga pamamaraan na nagbibigay ng enerhiya-dibid sa pag-inam na nagbibigay ng mga paggamit ng mga paggamit ng mga paggamit ng enerhiya-biyal.
Ang Papel ng Operating System sa Efficiency
Isang operating system na mga mapagkukunan ng hardware, at ang mga desisyon nito ay direktang nakakaimpluwensiya sa paggamit ng kuryente. Hindi tulad ng application-level optimizations, ang OS ay may system-wide view: ito ay kumokontrol sa CPU frequencys, walang-hanggan na mga estado, memorya allocation, at peripheral na aktibidad. Para sa mga aparatong pang-inhinyeriya na kailangang tumakbo sa loob ng mga taon sa isang bakterya o aniporestring OS ang kabuuang lakas ng sistema sa pamamagitan ng 30–50% na ito ay kumpara sa isang walang muwang na pagpapatupad, lalo na pagpapatupad ng mga kagamitang entrplikado.
Ang OS ay dapat ding mahirap unawaing pangangasiwa ng kuryente mula sa mga application developer. sa halip na pilitin ang bawat programa na pangasiwaan ang mga estadong hardware sleep, ang kernel ay nagbibigay ng mga mekanismong patakaran (gobern, power capping, device runtime PM) na umangkop sa mga real-time na kondisyon. Ang paghihiwalay na ito ng patakaran mula sa mekanismo ay pumapayag sa mga integrator ng sistema na i-food ang pag-uugali ng enerhiya nang walang regulat na software.
Mga Pamamaraan ng Core Para sa Disenyo ng Enerhiya-Efficient OS
Dynamic Voltage and Frequency Scaling (DVFS)
Ang DVFS ay nananatiling isang batong panulok ng OS-level power management. Sa pamamagitan ng pag-aangkop ng processorimen boltahe at orasan frequency bilang tugon sa pangangailangan ng pag-aaanunsyo ng trabaho, ang OS trades peak performance para sa pagtitipid ng enerhiya. Modern DVFS governments ⁇ tulad ng Linux [FLT:[1], [[FLLL] Ang mga gobernador ng DVFS] ay na sitelconservative, at ang [FL][4] ay maaaring magkaroon ng halos 100°F. Ang mga epistang lakas ay maaaring magkaroon ng halos ⁇ F.[T.[5] [[T] [[8] [[8] [[8] [[8] [[8] [[8] [[8] [[8] [[8] [[8] [[8] [[8] [[8] [[8] [[2] [[2] [[2] [[8] [[8] [[
Gayunman, ang pagiging epektibo ng DVFS ay nakasalalay sa trabahong pag-eeeload granularity. Ang mga maikling pagsiklab ng pagkalkula ay maaaring hindi makinabang mula sa mga madalas na pagbabago dahil sa transisyon sa itaas.[kailangan ng sanggunian] Ang OS ay dapat humula ng pangangailangan o reaksiyon sa hinaharap sa loob ng microseconds. Ang kamakailang gawain sa paggamit ng mga counter ng hardware at task-specific history ay nagpabuti ng DVFFS. Para sa mas maraming detalye sa pagpapatupad ng trade-off, tingnan ang LT.[LUPPPPPPPPPREPPPPPPPPPPPPREPPPPPS.
Patiunang Pag - idlip at Pangangasiwa ng mga Idle
Kapag ang isang processor ay walang mga handa gawain, ang OS ay dapat transition sa isang mababang-power na walang-pasing estado. Ang modernong CPUs ay nag-aalok ng multiple sleep states (C-states) na may iba't ibang mga shoat-up latencies at mga ipon ng kuryente. Ang OS bassy government state batay sa hinulaang walang-buhay na tagal. para sa mga aparatong inhenyeriya na gumugugol ng karamihan ng oras sa mga sensor input o network packsets, epektibong walang-hang pangasiwaan ay nangingibabaw sa mga na na na na na na na naimpok ng enerhiya.
Paglampas ng CPU, dapat pangasiwaan ng OS ang sistema-on-chip (SoC) mga bahagi: mga kontrol sa memorya, mga interconnect, at mga peripheral bawat isa ay maaaring pumasok sa mga self-refree o power-gated na mga estado. Ang konsepto ng runtime power management[ ay nagpapahintulot sa kernel na ma-shored perify indibidwal kapag hindi ito ginagamit, kahit na ang pangunahing CPU&PLT:0] Ang mahusay na kontrol na ito ay mahalaga para sa maraming mga staintential control, na may kasamang pag-intil-intelcellcell na may mga spant na stainter na stainter. Ang mga spant-Fo-int ay isang mga estadong repwer na walang-interial na repor ay nananatiling aktibo. Ang mga spinterial na may mga spint.
Task Pag - aalis ng Optimisasyon sa Enerhiya
Ang tradisyunal na pag - iiskedyul ng mga algorithm ay nagbibigay - priyoridad sa pagiging patas o sa pamamagitan ngput. Ang mga iskedyul ng Energy-aware ay nagdaragdag ng kapangyarihan bilang isang layunin sa pag - iiskedyul.
- Race-to-idle: Ang Complete work sa lalong madaling panahon, pagkatapos ay pumasok sa mahimbing na pagtulog. Ito ay gumaganang mainam para sa mga paltok na mga workload kung saan ang lakas ng tulog ay napaka-mababa.
- Energy-fisible frequency selection: Ang tagapag-iskedyul ay pumipili ng pinakamababang dalas na nakatutugon sa mga deadline demand para sa mga real-time na gawain.
- Cluster lakbay: Sa mga heterogeneous architecture (e.g., ARM malaki.LITTLE), ang OS ay nandarayuhan ang mga sinulid sa mataas na-effience core para sa gawaing magaan at malalaking core para sa mabibigat na karga.
Ang pag-iskedyul ng energy-aware ay dapat ding magresulta sa thermal interface sa pagitan ng mga core at memory access pattern. Halimbawa, ang paglipat ng isang atas sa isang core na mas malapit sa datos nito sa cache hierarchity ay nagpapabawas ng lakas ng memorya. Ang Linux Energy-Aware Scheduling document ay nagbibigay ng in-deepth na pagtingin sa kung paano isinasagawa ang mga patakarang ito.
Ang Pagmemorya at I/O Pagkontrol ng Kapangyarihan
Ang memorya (DRAM) ay kumukunsumo ng mahalagang lakas, lalo na sa panahon ng aktibong pag - aakses. Maaaring bawasan ng OS ang lakas ng memorya sa pamamagitan ng:
- Bank-aware allocation: Pagpapalaganap ng mga access sa ibayo ng memory banks upang maiwasan ang mga alitan sa bangko at payagan ang mga bangko na manatili sa mga low-power mode nang mas matagal.
- Pang-aawit at pag-iipon: Pagsasama ng mga aktibong pahina sa mas kaunting mga rehiyon ng memorya upang ang mga hindi nagagamit na rehiyon ay mailagak sa self-refreshed.
- NUTA-aware Moving: Sa mga sistemang multi-socket, na nag-iingat ng mga sinulid at datos sa parehong node upang mabawasan ang remote memory traffic.
Para sa I/O, ang OS ay gumagamit ng mga pamamaraan tulad ng coalescing network interrupts, pag-eeeeve ng disk, at pagpatay ng mga hindi ginagamit na tagakontrol sa pamamagitan ng ACPI. Ang hamon ay ang pagpapanatili ng pagtugon: ang pag-antala ng isang pag-abala ng ilang mga millisecond ay maaaring mag-tipid ng kapangyarihan ngunit maaaring lumabag sa isang sensor na binabasa sa deadline.
Mga Hamon sa Tunay na mga Sistema at mga Sistemang Nabuo
Ang disenyong energy-fificial OS ay lalo nang nangangailangan ng mga aparatong pang-inhinyeriya na dapat matugunan ang mga hard real-time deadline para sa halimbawa, isang motor controller sa isang robotic arm o isang data goal sa isang flight recorder. Dito, ang mga naimpok na enerhiya ay hindi maaaring dumating sa halaga ng mga hindi na-telektrisyon. ang mga real-time na iskedyul tulad ng Crain Monotonic o Eargest Deadline Una ay dapat na palawigin na may power-awareatness habang nag-iingat ng mga pagsubok sa stredulbilit stabilit stabilit stabilit stabilidad.
Ang isang paraan ay ang paggamit ng mabagal na oras: pagkatapos ng isang atas na natapos ng maaga, ang natitirang pantalon ay ginagamit upang bawasan ang dalas o pumasok sa pagtulog. Ito ay nangangailangan ng tiyak na pagsusuri sa oras at mababa sa itaas. Ang isa pang hamon ay na ang mga estadong mahimbing na tulog ay may malaking shoat-up lantncies. Samakatuwid ang OS ay dapat na tumugon sa loob ng 100 ⁇ , ang OS ay hindi makapasok sa isang C-state na may 500 ⁇ exitence latency. Ang OS ay dapat pumili ng mga kalaliman ng tulog batay sa pinakamaikling panahon na mangyayari bago ang susunod na deadline.
Ang ilang microcontroller ay nagpapahintulot sa OS na ipagpaliban ang mga pag - antala hanggang sa susunod na pag - iiskedyul ng garapata, na nagpapangyari sa mas mahabang panahon ng pag - aksaya. Pero ito ay nagdaragdag ng jitter.
Nagsasamang mga Technologies at mga Tagubilin sa Hinaharap
Mga Makina na Natututong Manipula ang Kapangyarihan
Ang tradisyunal na pangangasiwa ng kapangyarihan ng OS ay umaasa sa mga nakatakdang huristiko (e.g., mga transaksyong entidad).Ang pagkatuto ng mga makina ay nagbibigay ng potensiyal na mag-akma ng mga patakaran upang mag-eempleo ng mga padron na nagbabago sa paglipas ng panahon. Halimbawa, ang isang neural network ay maaaring magreresulta ng pangangailangan ng CPU sa hinaharap batay sa mga nakaraang mga pag-aup ng mga gawain at mga tagabunsod ng sensor, na na na na nagpapahintulot sa mga OS na maging proaktibong magtakda ng mga frequency o mga walang-bisang-buhay na estado. Ang mga maagang eksperimento ay nagpapakita ng 10–20% karagdagang mga stabilig enerhiya sa mga gobernador.
Gayunman, ang pagpapatakbo ng mga modelong ML sa mga aparatong pang-constrained mismo ay nakakakonsumo ng kapangyarihan.[S] Ang mga offload influential sa isang dedibidwal na low-power na admix o gumagamit ng magaang na mga modelo (e.g., mga punong dependiyente) na angkop sa kernel. Ang ay dapat na mag-ebolb ng papel na pang-based na "Matuklasining-Based Power Management for Multiforms-Core Processors"[ ay nagbibigay ng isang masusing pagtatasa ng mga pamamaraang pag-intipliksiyon ng mga pamamaraan.
Mababang-Kabigong mga Sedynergie
Ang OS ay hindi maaaring makamit ang sukdulang kahusayan sa enerhiya nang walang mahigpit na pagsasanib sa hardware.Ang mga nag-iisa na SoC ay nag-aalok ng mga pinong-gradyong power domain, per-core boltaheng regulator, at non-voltile memory na nagpapanatili ng estado sa panahon ng mahimbing na pagtulog.[kailangang ilantad ng OS ang mga kakayahang ito sa pamamagitan ng mga balangkas na pangkontrol ng kuryente habang humahawak ng mga hardware bugs at mga pagkakaiba-iba.
Ang mga processors ay pumapayag sa mga processor na tumatakbo sa napakababang boltahe, ngunit sila ay sensitibo sa temperatura at proseso variable. Ang OS ay dapat subaybayan ang mga-chip sensor at baguhin ang mga resonant marges (NTC) na nangangailangan ng real-time control loops. Karagdagan pa, ang mga heterogeneous architecture (e.g., ARM malaki.LITLE, x86 hybrid core) ay pinapayagan ang OS na mag-atas sa pinaka-inter-secance-scance-scleance-scleclecleclean (L) na magagamit ang isang malaki na modelo ng OLE.[TL][T][T][T]] [[T] [[T]]]] [[T]] [[T] [[T]] [[T]]] [[T]]] [[T] [[T]]] [[T]]]] [[T]]]] [[T]] [[T]]] [[T]] [
Ang isa pang magandang direksiyon ay ang paggamit ng mga aparatong pang-improduksiyon ng enerhiya na nagtitipon ng enerhiya mula sa solar, pagyanig, o RF sources. Ang mga aparatong ito ay may patuloy na suplay ng kuryente; ang OS ay dapat na mag-opera ng pag-aayos sa mga siklo ng kuryente, na nag-titled sa non-volatile memory bago ang isang pagkabigo ng kuryente. Ang "intermitent computing" na ito ay nangangailangan ng mga mekanismong pang-ekonopoin sa antas ng OS, isang paradigm na paglipat mula sa patuloy na operasyon ng kuryente.
Pagsasaayos
Ang pagdidisenyo ng mga sistemang pang-operasyon para sa mga aparatong pang-industriya na hindi kayang baguhin ng mga multidimensional na hamon na sumasakop sa DVFS, walang-layt na pangangasiwa, pagsasaayos, memorya at I/Optimisasyon, at real-time demandts.Ang mga matagumpay na disenyong ito ay nag-aangkop sa isang magkasanib na patakaran na nag-aangkop sa mga trabaho, mga hardware, at mga kondisyong pangkapaligiran. Habang ang mga kakayahan ng makina at bagong hardware ay gaganap ng mas malaking papel sa pag-pag-iinkwelo ng mga institurbor na entrcancemental na mga insclusional na mag-organcepor.