Sök:

Utredning av fördelar och nackdelar med 64-bits utökning av x86


Bill Gates anses en gång i tiden (1981) ha sagt, att "640 KB borde räcka för vem som helst". Idag är 32-bit teknikens gräns på 2-4 GB ansedd som för liten och det är huvudanledningen till att utvecklingen har gått vidare till 64-bits minnesadressering. Det förflyttar i dagsläget gränsen till 16 TB och mera potential finns kvar. Detta examensarbete har behandlat förändringar i samband med denna nya teknologi och undersökt vad som ändras vid övergång från 32-bit. Några områden som är värda att nämna som viktiga är nya möjligheter med minneskapaciteter men även förändringar som har att göra med mjukvaror. Det allra viktigaste området i detta arbete har varit att besvara frågor om hur stora förändringar som krävs vid programmering av mjukvara och om dessa ändringar kan motiveras. Uppdragsgivaren, TietoEnator Government Services Sweden avdelning Solutions Development North, har med deras programvaror och behov varit en central utgångspunkt för hela examensarbetet. Den teknik som har varit i fokus är den utökning av x86-arkitekturen som AMD utvecklade och lanserade med sina AMD64-processorer. Senare har Intel licensierat denna teknologi och idag är den i det närmaste standard på PC-marknaden vad gäller processorer. Mycket av det som sägs i denna rapport gäller även för andra 64-bits teknologier som idag finns på marknaden, t.ex. IA64, men alla antaganden om detta får stå för läsaren själv. Anledningen till att AMD valde en utökning av x86 för att utveckla den nya arkitekturen var den stora mängden befintliga programvaror som finns på marknaden och oviljan från användare att tvingas byta ut alla sina program samtidigt. Möjligheten ges nu att fortsätta använda de flesta befintliga 32-bits programvaror, även efter en uppgradering av operativsystem, utan märkbara prestandaförluster. Men om steget tas fullt ut med en uppgradering av programvaran till 64-bits så kan en prestandaökning oftast bli fallet. I tester utförda under detta examensarbete kunde prestandaförbättringar på TE GSS produkter uppmätas till 15-25%. Erfarenheterna av arbetet med programmering i x64-miljö visar på att det krävs små förändringar hos TE GSS för att kunna utnyttja denna teknologi. Skillnaden i programmering är främst inriktat på korrekt användning av polymorfiska datatyper som ändrar storlek beroende på vilken plattform programvaran körs på. Att konvertera befintliga programvaror är definitivt värt ansträngningen om det finns behov av den högre prestandan eller möjligheten till större mängd resurser (främst RAM), annars kan det anses överflödigt. Men att inte tänka på den nya tekniken och förändra sitt kodningssätt i tid när nya program utvecklas måste anses som dumdristigt eftersom förändringarna är små om bara kunskapen finns. Det som främst kan anses vara ett hinder i tidsramen för när 64-bits programvara ska marknadsföras på bred front till kund är kostnader i resurser för att testa på ytterligare plattformar samt att kunder ännu inte riktigt efterfrågar det. Med denna rapport vill jag dela med mig av de erfarenheter och kunskaper som examensarbetet har skapat. Rapporten och dess referenser ska fungera som viktig informationskälla till uppdragsgivaren och andra vid funderingar kring x64-teknologin. Informationen i rapporten ska vara tillräckligt utförlig för att skapa en bra bild av 64-bits arkitekturen som undersökts med dess för- och nackdelar. Den ska även innehålla nödvändig information för att kunna användas som referensmaterial vid programmering av x64-programvaror. För den som vill läsa vidare och skapa sig ytterligare teknisk information ska det vara möjligt att fördjupa sig via de referenser jag har använt mig av.

Författare

Sture Eklund

Lärosäte och institution

Luleå tekniska universitet/LTU Skellefteå/Grundutbildning

Nivå:

Detta är ett examensarbete.

Läs mer..