Hva er dataarkitektur?
Dataarkitektur refererer til en rekke lignende ideer innen datavitenskap og teknologifelt. På programvarenivå refererer det til samlingsspråksystemene som kobler de forskjellige delene av datamaskinens maskinvare til et enkelt fungerende system. Når du arbeider med maskinvare, gjelder det likt metodene for å lage og bruke maskinvare og prosessen med å konstruere datamaskinkomponenter. Hver av disse definisjonene beskriver en lignende prosess - ideen om å starte med et ikke-fungerende datasystem og gjøre det funksjonelt - men de ser alle på prosessen fra et annet synspunkt.
Programvareversjonen av dataarkitektur er sannsynligvis den vanskeligste for en ikke-teknisk person å forstå. Et datasystem utfører tusenvis av oppgaver til enhver tid som ikke har noe å gjøre med det brukeren gjør. Disse oppgavene danner grunnlaget for datamaskinens systemer. Det kan være å flytte informasjon fra korttidsminne til langtidsminne eller sjekke tiden mot en planlagt oppgave for å se om det er tid for aktivering.
Alle disse datamaskinarkitekturfunksjonene er avhengige av maskinkode for å forstå hvordan de forskjellige delene av maskinen er koblet sammen. Denne koden skaper en grunnleggende blåkopi av datamaskinens maskinvare som høyere fungerende programmer bruker for å få tilgang til ting som prosessortid og minneadresser. Denne maskinkodens blåkopi definerer strukturen i systemet fra programvarens synspunkt.
Den første maskinvareversjonen av datamaskinarkitektur er skjemaet som ble brukt til å lage programvarenes blåkopi. Denne formen for arkitektur er sentralt for hvordan forskjellige deler av maskinen vil sende og motta data for å samarbeide. For eksempel, hvis en minnemodul ønsker informasjon formatert på en spesifikk måte, er det viktig at prosessoren sender den i det formatet slik at dataene kan lagres. Hvis de forskjellige delene av datamaskinen ikke kan kommunisere med hverandre, fungerer ikke systemet.
Den andre maskinvareversjonen av dataarkitektur fokuserer på enkelt maskinvare. Denne metoden krever at designere ser på et individuelt stykke og bestemmer hvordan det vil fungere. Nesten hver maskinvare inneholder en kompleks serie med instruksjoner for å manipulere data, motta instruksjoner og gi kommandoer. Alt dette foregår innenfor maskinvaren, og krever et fullt ut realisert språk- og kommandosystem. I hovedsak fungerer hver maskinvare som en veldig spesialisert datamaskin.
Siden hver av disse definisjonene snakker om en annen fasett av dataarkitektur, ender de alle sammen pent. Først ser en designer på de enkelte delene av maskinvaren og bestemmer hvordan de fungerer. Deretter settes brikkene sammen for å danne et maskinvaresystem. Til slutt brukes maskinkoden for å koble disse systemene sammen på en slik måte at programmer kan samhandle med maskinvaren.