Materialabstraheringslag

I databehandling , spesielt i arkitektur , er et hardware-abstraksjonslag (forkortet HAL for hardware-abstraction-lag ) et programvareformell mellom operativsystemet og maskinvaren . Den tilbyr standardiserte funksjoner for håndtering av maskinvare mens du skjuler de tekniske detaljene i implementeringen.

Mange produsenter av operativsystemer inkluderer et lag med maskinvareabstraksjon i produktene. Det er et viktig stykke programvare i bærbare operativsystemer - sannsynligvis brukt på forskjellige typer maskinvare: i tilfelle porting krever bare hardware-abstraksjonslaget tilpasning.

Funksjoner

Et hardware-abstraksjonslag har et programmeringsgrensesnitt som gir generiske og kommodiserte funksjoner for å manipulere maskinvare mens du skjuler de tekniske detaljene for hvordan maskinvaren fungerer. Dette gjør at programvaren kan samhandle med maskinvaren og ignorere de tekniske detaljene til maskinvaren.

Maskinvareabstraksjonslaget er det laveste laget med programvare, helt maskinvareavhengig, nær driverne og kjernen i operativsystemet. Den tilbyr funksjoner som muliggjør for eksempel implementering av kontekstbytte , synkronisering , håndtering av avbrudd , med tanke på enden til prosessoren som brukes, håndtering av systemklokken eller enheten . Hver funksjon inneholder instruksjoner for implementering av den på en bestemt type maskinvare.

Det er en viktig del av bærbare operativsystemer, som kan brukes på forskjellige typer maskinvare. Det forbedrer operativsystemets bærbarhet : Hvis et slikt system trenger å bli tilpasset for bruk på en ny type maskinvare, er maskinvareabstraksjonslaget det eneste programvaren som trenger tilpasning.

Eksempler

Mange produsenter av operativsystemer inkluderer et lag med maskinvareabstraksjon i produktene. Konstruksjonen av materialabstraheringslaget er spesifikk for hver produsent.

Når du designer et innebygd system , tillater eksistensen av et hardware-abstraksjonslag programvaredesign å begynne før maskinvaredesignen er fullført.

Den eCos opererer systemet har en maskinvare abstraksjon lag i form av en pakke med C programmeringsspråket eller montering språk makroer , som er tilpasset i henhold til egenskapene til maskinvaren.

Windows NT- operativsystemfamilien har et lag med maskinvareabstraksjon. Det er 5 forskjellige modeller; når du installerer operativsystemet, installerer det automatisk modellen som passer best for maskinvaren på datamaskinen.

Merknader og referanser

  1. (en) Anthony J. Massa, Embedded Software Development With Ecos , Prentice Hall Professional - 2003, ( ISBN  9780130354730 )
  2. (en) Syngress, MCSA / MCSE Administrere og vedlikeholde et Windows Server 2003-miljø (eksamen 70-290): Studieveiledning , Syngress - 2003, ( ISBN  9780080479255 )
  3. (en) El Mostapha Aboulhamid - Frederic Rousseau, System Level Design with .Net Technology , CRC Press - 2010, ( ISBN  9781439812129 )
  4. (en) Wolfgang Ecker - Wolfgang Müller og Rainer. Dömer, maskinvareavhengig programvare: prinsipper og praksis , Springer - 2009, ( ISBN  9781402094361 )
  5. (no) Ahmed Amine Jerraya, Embedded Software for SoC , Springer - 2003, ( ISBN  9781402075285 )