Verifiering och validering av programvara med automatisk provning på gränssnitt. Håkan Edler

Storlek: px
Starta visningen från sidan:

Download "Verifiering och validering av programvara med automatisk provning på gränssnitt. Håkan Edler"

Transkript

1 Verifiering och validering av programvara med automatisk provning på gränssnitt Håkan Edler

2 FoTA P9 Experimentell verifiering av feldetektering och feltolerans En teknik för att automatiskt generera och exekvera provfall för beteendeprovning - blackbox testing En provbänk för provning av robusthet och feltolerans i programvarumoduler Ett projekt för tekniköverföring baserat på vår forskning på Chalmers om pålitlig programvara

3 Mål för vår forskning Metoder att analysera datorbaserade system ur pålitlighetssynvinkel Analytisk modellering för att verifiera pålitlighet och som underlag för felinjicering Utveckling av metoder att bygga feltolerant Utveckling av metoder att experimentellt verifiera pålitlighet

4 Vision Pålitliga datorsystem tack vare programvara

5 Att åstadkomma pålitlighet Pålitliga programvarusystem skall byggas så att Fel undvikes Kvarvarande fel skall tålas Fel i kompilatorer, länkare, laddare, systemprogramvara skall tolereras likaväl som temporära och permanenta maskinvarufel. Pålitliga programvarusystem skall provas så att Fel hittas och rättas Mängden kvarvarande fel skall kunna förutsägas

6 Varför prova? Varför prova program? Att verifiera att en konstruktion stämmer sin specifikation Att validera att ett systems funktioner stämmer med användarnas förväntningar Att finna fel Det senare är ineffektivt, fel skall ha hittas tidigare. Dijkstra 1972: program testing can be used to show the presence of bugs, but is hopelessly inadequate to show their absence

7 Om kvarvarande fel Hur ser fel ut i beprövad programvara? Kör program i automatprovning ett år med slumpvis valda indata ur en given användningsprofil. Sannolikheten för ett fel under en drifttimme är då av storleksordningen 10-4, om provets användningsprofil är relevant för driftsituationen. En undersökning av fältrapporter från tre operativsystem hos IBM 1984 visade att en tredjedel av alla fel hade inträffat en gång hos en kund. Det gav MTTF på 5000 h. Felet som orsakade att Ariane 5 kraschade på sin jungfrutur var ett enkelt programfel, men sex samverkande faktorer bidrog till att det aktiverades.

8 Felinjicering För att prova programvara av hög kvalitet måste man vid provning artificiellt föra in fel i systemet - felinjicering - för att: verifiera felhanteringsmekanismer validera tillförlitligheten Det kräver att man finner : en bra modell för fel på den abstraktionsnivå man arbetar var felen skall injiceras när felen skall injiceras lämplig belastning för systemet vid provning

9 En provningsmiljö User input Campaign specification I/O 3 FIC Readouts Faults or errors I/O Reset Target system Signals Environment simulator Data analyzer Readouts Trigger Error injector

10 Provbänk för felinjicering Styrdator Monitor Felinjicerare Målsystem Datainsamlare Omvärldssimulator Analysator

11 Felinjicering i anrop av program Felinjicering: Anrop med fel parametervärden Felyttring: Crash Omission Timing Value Är feltill stånd i systemet

12 Hur hitta provdata Ekvivalenspartitioner Gränsvärdesanalys Analys av tillståndsmaskin Felträdsanalys Felmodsanalys

13 En generell modell för felbeteende Byzantine Computation Timing Omission Crash

14 Generering av provfall API alloc (OSBUFSIZE size, SIGSELECT signo) TESTING OBJECTS TEST VALUES memory buffer size test object SIZE_1 SIZE_16 SIZE_MAX SIZE_MAXplus1 SIZE_MAXminus1 SIZE_ZERO SIZE_NEG SIZE_MAXINT SIZE_MININT signal number test object NB_ZERO NB_32 NB_MAXINT NB_MININT NB_NEG NB_ALREADYUSED NB_1 TEST CASE { inits } alloc (SIZE_16, NB_ALREADYUSED)

15 Provning av ett RTOS Definition och utförande Definition av systemanrop Definition av provmönster Definition av provfall Definition av prov Loggare Databas Generator Provat system Monitor Felhanterare Injector Reflektor

16 Ett RTOS, resultat 20 systemanrop ingick i provbänken. Omfattande provningsmetodik fanns. För varje systemanrop fanns ett antal program i källtext, som utgjorde separata provfall. Varje provfall kördes för sig. Provfallen hade växt fram organiskt som följd av funna fel i systemet. Metoden med felinjicering på gränssnitt gav mångfalt fler provfall. De kan köras automatiskt. Problemet med att sätta systemet i ett givet tillstånd före ett provfall löstes med en följd av anrop.

17 Ett provfall Ett provfall består av: En följd av inledande systemanrop De sätter systemet i ett givet tillstånd innan det provande anropet görs. T ex måste minne allokeras innan en process kan skapas. Två processer måste skapas om man vill prova kommunikation mellan processer. Returvärden från målsystemet måste kunna användas i såväl inledande som provande anrop. Ett provande anrop Det har parametrar genererade genom cyklisk permutation av alla ingående datatypers värdemängder valda för proven. Ett resultat Systemets svar på det provande anropet. Det skickas till datainsamlaren för loggning och senare analys.

18 Syfte med FoTA P9 Lära oss hur felhanteringsmekanismer i programvara kan klara fel i programvaran, indatafel, temporära maskinvarufel och permanenta maskinvarufel. Etablera ett sätt att analysera, konstruera och bygga programvarusystem med hänsyn till pålitlighet. Etablera för praktisk användning en provningsmiljö för experimentell verifiering av pålitlig programvara. Studera hur generella mekanismer för felupptäckt och felhantering kan byggas in i ett driftsystem. Studera en metod att mäta på gränssnitten i programvara. Detta kan vara av stor framtida betydelse, då det gäller att verifiera COTS.

19 Blueberry Blueberry 3D är ett realtidssystem för visualisering av virtuella utomhusmiljöer. BBDB är det egenutvecklade databassystemet, som lagrar data om terrängen. Blueberry 3D API är ett programmeringsgränssnitt för externa utvecklare. För prov av felhanteringsmekanismerna använde man injicering av felkällor. För BBDB ändrades slumpmässigt tecken i databasen, som sedan lästes in för visualisering. En loggfil skrevs för att underlätta felsökning. I API provades nio funktioner med sammanlagt 16 parameterar. Anropsordning och parametervärden slumpades fram för varje provfall.

20 Blueberry, resultat Ett stort antal provfall kördes: 1445 på BBDB. 513 gav normalt resultat. 886 avbröts av en timer loop eller felmeddelande från Windows, alltså inte nödvändigtvis fel i systemet. 25 gav ohanterat undantag. 21 gav hanterat undantag. 800 på API. 489 gav normalt resultat, systemet kunde hantera felet. 311 gav hanterat undantag, felet blev för stort. Felinjicering av felkällor är en bra metod att eliminera fel i felhanteringen. Man måste ha en bra felmodell. Ett automatiskt verktyg kostar men lönar sig.

21 MACS, Airborne Modular Computer System Prefix Anrop Variabel Generator Programtext Direktiv Kompilator Länkare Laddare Laddmodul Målsystem Logg Värdetabell Suffix

22 MACS, resultat Tre moduler användes vid våra prov. Kopiering av minnesblock 2200 provfall skapades med enbart giltiga parametrar. Alla provfallen fungerade som förväntat provfall skapades, medvetet valda för att provocera programmen. Proceduren gav felbeteende i ett antal fall. Dessa felbeteenden är förväntade, då proceduren inte konstruerats för robusthet utan snabbhet. Flyttalskonvertering mellan MACS och D80E. 22 provfall skapades, alla gav korrekt beteende. Sättning av datum och klocka provfall skapades, alla gav korrekt beteende.

23 Gripen systemdator Starta och initiera test. Gör att testfallen kan köras igenom från början. Sätt tillbaka testfall ett steg Nästa testfall, ett bestämt kodområde. Sätt parametrarna till nästa variant. Gör anrop och logga Avsluta när alla testfall har gåtts igenom

24 Gripen systemdator, resultat Periodisk exekutiv. Den är den aktiva processen och driver systemet. Procedurer kan inte enkelt isoleras och provas separat. Källtestskal byggda för programvaran. Ett antal provfall definierade, som i sekvens provar procedurerna i en tillämpning. Extra programtext genererades, som lades in i k-testskalet och som körde ett stort antal provfall på en procedur. Av utrymmesskäl begränsades antalet till 294. Det viktigt att tänka ut sätt för återstart av systemet eftersom systemet avsiktligt misshandlas med felaktiga och provocerande provvärden. Man kan förvänta sig, att allvarliga fel uppstår. De använda metoderna ersätter inte de nuvarande provfallen men tillför mervärde och kanske kan antalet befintliga provfall reduceras och istället ett stort antal provfall för varje proceduranrop genereras.

25 Tyko 32, planerat Tyko32 WAN Tyko32 LAN LAN Minimal VBS Automatprovare Minimal VBS Provfall med stimulus Respons

26 Tyko 32, genomförande WAN Provfall med stimulus och respons Tyko32 LAN VBS med testfunktionalitet LAN Tyko32 Passiv VBS

27 Tyko 32, resultat Ett stort antal provfall körda genererade fungerade enligt förväntningar gav felbeteende Analys av resultaten gav: En del av felen berodde på felaktig kravbild, systemet var byggt enligt kraven, men kraven var fel. Resterande fel var konstruktionsfel. Inte helt lätt att kontrollera loggar. Ett effektivt sätt att verifiera ett system. Loggen från en körning blir ett bra facit för kommande prov.

28 Generalisering av provbänkarna, blockschema Generell del Definition av systemanrop Definition av provmönster Definition av provfall Definition av prov Loggare Databas Generator Speciell del Monitor Felhanterare Injector Målsystem Omvärldssimulator

29 Några erfarenheter Genom ett genomtänkt val av provdata kan man automatiskt generera och exekvera ett stort antal provfall, som fokuserar på en programenhets funktioner och begränsningar. Självklart kommer man vid tillämpning av metoden att hitta ett antal provfall, där resultatet avviker från det förväntade. Den stora vinsten är dock att: Man får en god täckning av giltiga och ogiltiga anrop till en programenhet. Man får en provbänk, där man kan prova en programenhet med ett stort antal provfall ett stort antal gånger under dess uppbyggnad. Man får en uppsättning referensprov att utnyttjas vid regressionsprov.

30 Sättet att tänka vid utveckling av program förändras. Program byggs provningsbara Man blir klart benägen att tänka på robusthet, vilka fel som kan inträffa vid användning av programmet och hur man skall hantera dem. Man tänker också på provningsbarhet, hur programmet skall kunna verifieras under sin utveckling och sedan det är färdigt. Provning beaktas tidigt. Man ser man systemet ur en annan synvinkel, vilket betyder mycket för att man skall kunna ge det en god arkitektur. Man skapar också provfall på rätt systemnivå innan man trängt för djupt in i detaljerna.

31 Säkerhet i programutveckling Man får en säkerhet i det man gör. Behärskar konstruktionen Får en känsla för var det kan gå snett. Provningssystemet byggs parallellt med programmet Det kan användas kontinuerligt under utvecklingen. Det blir ett kraftfullt komplement till en debugger Loggar från gjorda prov blir referensdata till kommande prov golden run, oracle

32 Hur kan teknik och metod användas Pålitligheten kan kvantifieras En programvarumodul kan provas under oförändrade förutsättningar medan den utvecklas. Repeterbarheten är mycket viktig. Verifiera funktioner och begränsningar. Återanvändning av programdelar förenklas. Provningsprogrammet kan återanvändas. Provresultat kan återanvändas. Kvalitet och produktivitet ökar. Omfattande provning kan göras till acceptabla kostnader. Man får konkreta mätetal för processförbättringar.

33 Provning av objekt Ett objekt är provningsbart om man kan: Sätta provobjektet i godtyckligt tillstånd före ett prov. Stimulera med det provdata. Registrera dess respons och sluttillstånd. Jämföra erhållet respons med förväntat.

34 Fortsatt arbete en provbänk för utvecklare Verifiera pålitlighet. Prova existerande komponenter Lägg in mekanismer för att öka robusthet. Gör om prov och mät förändring. Lägg in mekanismer för feltolerans. Gör om prov och mät förändring. Komplettera med inbyggda mekanismer för provning - Component+. Studera processförbättringar för V&V. Utveckla tekniken och skapa en produkt, som kan användas i vidare sammanhang.

Experimentell verifiering av feldetektering och feltolerans

Experimentell verifiering av feldetektering och feltolerans Experimentell verifiering av feldetektering och feltolerans Projekt P9 inom Forskning och teknikutveckling för anpassning Etablering av experimentmiljö Författare Siv Hermansson Jan Sinclair Dokument Id

Läs mer

Experimentell verifiering av feldetektering och feltolerans

Experimentell verifiering av feldetektering och feltolerans FÖRSLAG 1 (8) Ert datum Er beteckning Handläggare Håkan Edler Fördelning Godkänd av Kopia till Projektets namn Experimentell verifiering av feldetektering och feltolerans Förslagsställare Håkan Edler HiSafe

Läs mer

Pålitlig och feltolerant programvara. Håkan Edler Laboratoriet för pålitliga datorsystem Institutionen för datorteknik Chalmers tekniska högskola

Pålitlig och feltolerant programvara. Håkan Edler Laboratoriet för pålitliga datorsystem Institutionen för datorteknik Chalmers tekniska högskola Pålitlig och feltolerant programvara Laboratoriet för pålitliga datorsystem Institutionen för datorteknik Chalmers tekniska högskola 1 1 Vision Pålitliga datorsystem tack vare programvara 2 2 3 3 Vad är

Läs mer

Experimentell verifiering av feldetektering och feltolerans. Inledande prov med felinjicering på gränssnitt

Experimentell verifiering av feldetektering och feltolerans. Inledande prov med felinjicering på gränssnitt Experimentell verifiering av feldetektering och feltolerans Projekt P9 inom Forskning och teknikutveckling för anpassning Inledande prov med felinjicering på gränssnitt Författare Håkan Edler Siv Hermansson

Läs mer

Experimentell verifiering av feldetektering och feltolerans. Inledande prov med felinjicering på gränssnitt

Experimentell verifiering av feldetektering och feltolerans. Inledande prov med felinjicering på gränssnitt Experimentell verifiering av feldetektering och feltolerans Projekt P9 inom Forskning och teknikutveckling för anpassning Inledande prov med felinjicering på gränssnitt Författare Håkan Edler Siv Hermansson

Läs mer

Vad händer egentligen före en krasch? Svarta lådor och tidsmaskiner sparar pengar för företag

Vad händer egentligen före en krasch? Svarta lådor och tidsmaskiner sparar pengar för företag PRESSRELEASE 2003-02-07 Vad händer egentligen före en krasch? Res bakåt i tiden och se hur och varför programmet uppförde sig fel! Svarta lådor och tidsmaskiner sparar pengar för företag Svarta lådor och

Läs mer

Felhantering TDDD78, TDDE30, 729A

Felhantering TDDD78, TDDE30, 729A Felhantering TDDD78, TDDE30, 729A85 jonas.kvarnstrom@liu.se 2019 Felhantering 2 Ofta antar vi att allt ska fungera Alla filer vi behöver finns går att öppna Tillräckligt mycket minne finns Servrar som

Läs mer

Testning på 3 föreläsningar. PV7180 Verifiering och Validering. Litteratur. Vad är testning? Varför testa och olika syn? Målet med testning

Testning på 3 föreläsningar. PV7180 Verifiering och Validering. Litteratur. Vad är testning? Varför testa och olika syn? Målet med testning ning på 3 föreläsningar Första föreläsningen Översikt PV7180 Verifiering och Validering Föreläsning 3 ning del 1 Andra föreläsningen Coverage ing, OO-ing, Utvärdering av tekniker Tredje föreläsningen Automatiserad

Läs mer

Testning av program. Verklig modell för programutveckling

Testning av program. Verklig modell för programutveckling Fel i program När man skriver program uppkommer alltid fel. Felen kan indelas i följande kategorier: Under kompileringen upptäcker kompilatorn fel som handlar om att man använt konstruktionerna i programspråket

Läs mer

Mjukvarudesign. Designprocessen. Teknisk design. Konceptuell design

Mjukvarudesign. Designprocessen. Teknisk design. Konceptuell design RE SD PD I UT IT ST AT Mjukvarudesign System Requirement Specification Inkrementell och iterativ! Konceptuell design (VAD) Systemdesign (OOA) Arkitekturell (grovkornig, UML) Teknisk design (HUR) Programdesign

Läs mer

Felträdsanalys FTA

Felträdsanalys FTA Felträdsanalys FTA 1 FTA FTA utgår från en för systemet oönskad vådahändelse, även kallad topphändelse vilken undersöks m a p möjliga orsaker först de omedelbart föregående, därefter de näst föregående

Läs mer

Metoder och verktyg för funktionssäkerhet

Metoder och verktyg för funktionssäkerhet Metoder och verktyg för funktionssäkerhet Projektstart 1. Hantera kraven En bra process är grunden för att hantera kraven i ett säkerhetsprojekt. Det krävs att du har en tydlig spårbarhet mellan krav och

Läs mer

Realtidssystem HT03. Vad är realtidssystem? Inbyggda system. Att programmera, Tasks (Uppgifter) Realtidssystem kräver analys

Realtidssystem HT03. Vad är realtidssystem? Inbyggda system. Att programmera, Tasks (Uppgifter) Realtidssystem kräver analys Realtidssystem HT03 Vad är realtidssystem? Föreläsare: Wang Yi Rum: 1235, yi@it.uu.se, Tel: 471 3110 Assistent: Tobias Amnell Rum: 1216, tobiasa@it.uu.se, Tel: 4717122 Webbsida: www.it.uu.se/edu/course/homepage/realtid/h03

Läs mer

Några grundläggande begrepp

Några grundläggande begrepp Några grundläggande begrepp Validering bygger vi rätt system? Uppfyller kravspecifikationen de verkliga behoven? Verifiering bygger vi systemet rätt? Uppfyller det färdiga systemet kravspecifikationen?

Läs mer

International Olympiad in Informatics 2011 22 29 July 2011, Pattaya City, Thailand Tävlingsuppgifter Dag 2 Svenska 1.3. Papegojor

International Olympiad in Informatics 2011 22 29 July 2011, Pattaya City, Thailand Tävlingsuppgifter Dag 2 Svenska 1.3. Papegojor Papegojor Yanee är fågelentusiast. Sedan hon läst om IP over Avian Carriers (IPoAC), har hon spenderat mycket tid med att träna en flock papegojor att leverera meddelanden över långa avstånd. Yanees dröm

Läs mer

Configuration testing Why? Vad det är tänkt att koden ska göra. Performance testing Kommentarer Skriva om koden som kommentar

Configuration testing Why? Vad det är tänkt att koden ska göra. Performance testing Kommentarer Skriva om koden som kommentar Skapa testfall Testing Köra testen Hitta fel Inspections and reviews Verifiera resultatet Formal methods Static analysis Completeness Verifiering Kvalitet Maintainability Validering Traceability Fault

Läs mer

Klassen javax.swing.timer

Klassen javax.swing.timer Klassen javax.swing.timer I Swing finns en klass Timer som man kan använda för att upprepa en vis kodsekvens med jämna tidsmellanrum. Ett objekt av klassen Timer exekveras som en egen tråd. Ett objekt

Läs mer

Viktiga begrepp. Algoritm. Array. Binärkod. Blockprogrammering. Bugg / fel och felsökning. Dataspel. Dator

Viktiga begrepp. Algoritm. Array. Binärkod. Blockprogrammering. Bugg / fel och felsökning. Dataspel. Dator Viktiga begrepp Den här ordlistan är till för dig som går kursen Om Programmering. Eftersom detta är en grundläggande kurs har vi i vissa fall gjort en del förenklingar. En del begrepp är svåra att förenkla,

Läs mer

Operativsystem Lektion 1. Lärare. Schema. Kurssajten Finns på adressen. Jan Erik Moström. Set Norman

Operativsystem Lektion 1. Lärare. Schema. Kurssajten Finns på adressen. Jan Erik Moström. Set Norman Operativsystem Lektion 1 1 Lärare jem@cs.umu.se, B449 Lektioner etc Set Norman set@cs.umu.se, NAdv105 Labbar, labhandledning 2 Schema Notera att det finns ändringar i schemat!! Under perioden 1-8 mars

Läs mer

Operativsystem. Innehåll. Operativsystemets funktion. Vad är ett OS? Vart hittar men ett OS? OS hanterar processorns resurser

Operativsystem. Innehåll. Operativsystemets funktion. Vad är ett OS? Vart hittar men ett OS? OS hanterar processorns resurser Innehåll Operativsystem Vad är operativsystem och hur fungerar de Vad är ett OS? Syfte Att tillåta flera program att köra samtidigt Att fungera som ett abstraktionslager mot hårdvaran Att hantera olika

Läs mer

Programdesign. Dokumentera. Dokumentera

Programdesign. Dokumentera. Dokumentera Programdesign Dokumentera Välj datastruktur så programmet blir så enkelt som möjligt. Välj algoritm så programmet blir lättläst, robust och effektivt. Analysera programmet för att få en bra metod. Överväganden

Läs mer

PMM (Process Maturity Metrics) Allmänt. Mätetal för framgångsfaktorer. 1. CM konfigurationsstyrning

PMM (Process Maturity Metrics) Allmänt. Mätetal för framgångsfaktorer. 1. CM konfigurationsstyrning PMM (Process Maturity Metrics) PMM är en metod för att mäta processmognad i utvecklingsprojekt. I korthet går metoden ut på att man utvärderar sin utvecklingsprocess med avseende på ett antal framgångsfaktorer

Läs mer

Programdesign. minnesutrymme storlek på indata. DA2001 (Föreläsning 15) Datalogi 1 Hösten / 20

Programdesign. minnesutrymme storlek på indata. DA2001 (Föreläsning 15) Datalogi 1 Hösten / 20 Programdesign Välj datastruktur så programmet blir så enkelt som möjligt. Välj algoritm så programmet blir lättläst, robust och effektivt. Analysera programmet för att få en bra metod. Överväganden vid

Läs mer

Introduktion till hårdvara, mjukvara och operativsystem

Introduktion till hårdvara, mjukvara och operativsystem Introduktion till hårdvara, mjukvara och operativsystem Grundläggande operativsystem 1DV415 1 1 Lärare Marcus Wilhelmsson Universitetsadjunkt i datavetenskap Linux, UNIX (Solaris, OpenSolaris, Mac OS X),

Läs mer

M7005 Exportera data på Q- DAS ASCII Transferformat

M7005 Exportera data på Q- DAS ASCII Transferformat Matematikföretaget jz www.m7005.metem.se. 170220/170926/180315/180418/Sjn M7005 Exportera data på Q- DAS ASCII Transferformat Användarhandbok T.ex M7005 Exportera data på Q_DAS ASCII Transferformat, Användarhandbok

Läs mer

Programmering i C++ EDA623 Objektorienterad programutveckling. EDA623 (Föreläsning 5) HT 2013 1 / 33

Programmering i C++ EDA623 Objektorienterad programutveckling. EDA623 (Föreläsning 5) HT 2013 1 / 33 Programmering i C++ EDA623 Objektorienterad programutveckling EDA623 (Föreläsning 5) HT 2013 1 / 33 Objektorienterad programutveckling Innehåll Grundläggande begrepp Relationer mellan objekt Grafisk representation

Läs mer

Objektorienterad programmering

Objektorienterad programmering Objektorienterad programmering Föreläsning 14 Copyright Mahmud Al Hakim mahmud@dynamicos.se www.webacademy.se Agenda Exceptionella händelser Vanliga Programfel Exception-klasser Automatiskt genererade

Läs mer

Riktlinje för säkerhetskrav vid upphandling av IT-stöd

Riktlinje för säkerhetskrav vid upphandling av IT-stöd 1 (5) Ver. 1.1-2008-11-06 Riktlinje för säkerhetskrav vid upphandling av IT-stöd 1. Inledning Detta dokument redogör för vissa grundläggande säkerhetskrav som bör ställas i samband med anskaffning eller

Läs mer

Kopiering av objekt i Java

Kopiering av objekt i Java 1 (6) Kopiering av objekt i Java Först När du läser detta papper bör du samtidigt studera dokumentationen för klasserna Object, Cloneable (java.lang) och ArrayList (java.util). Mycket blir klarare genom

Läs mer

Vad är RTCA DO-178C? och: Hur arbetar Saab med dessa krav? Lars Ljungberg, Saab AB, Avionics Systems

Vad är RTCA DO-178C? och: Hur arbetar Saab med dessa krav? Lars Ljungberg, Saab AB, Avionics Systems Vad är RTCA DO-178C? och: Hur arbetar Saab med dessa krav? Lars Ljungberg, Saab AB, Avionics Systems 2018-05-07 FUNCTONAL SAFETY DO-178C är processorienterad dentifiera risker (hazards) och de säkerhetsfunktioner

Läs mer

Outline. Datorsystemtekni. Kravspecifikation. Kravspecifikation (forts.)

Outline. Datorsystemtekni. Kravspecifikation. Kravspecifikation (forts.) Outline för D2, ICT2, E3 och Mek3 Nicholas Wickström Högskolan i Halmstad Sverige p.1/18 Förra föreläsningen Specifikation -Kravspecifikation -Funktionsspecifikation -Blockdiagram Operativsystem -Grunder,

Läs mer

Designmönster, introduktion. Vad är det? Varför skall man använda mönster?

Designmönster, introduktion. Vad är det? Varför skall man använda mönster? Designmönster, introduktion. Vad är det? Varför skall man använda mönster? Kent Petersson EMW, Mölndal Datavetenskap, Chalmers epost1: kentp@cs.chalmers.se epost2: kent.petersson@emw.ericsson.se URL: http://www.cs.chalmers.se/~kentp

Läs mer

FLEX Personalsystem. Uppdateringsanvisning

FLEX Personalsystem. Uppdateringsanvisning FLEX Personalsystem Uppdateringsanvisning Innehållsförteckning UPPDATERING... 3 Allmänt... 3 Förberedelser... 3 Informera om uppdatering... 3 Ladda hem uppdateringsfiler... 4 Att observera vid uppdatering...

Läs mer

DIG IN TO Dator och nätverksteknik

DIG IN TO Dator och nätverksteknik DIG IN TO Dator och nätverksteknik CCNA 1 Operativsystem Agenda Datorsystemets struktur Vad är ett operativsystem? Minneshantering Threads och processer Threads eller exekveringstrådar Processhantering

Läs mer

Länkning av Prolog under C

Länkning av Prolog under C Länkning av Prolog under C Kent Boortz Swedish Institute of Computer Science Box 1263, S-164 28 Kista, Sweden 1 september 1991 T91:14 Sammanfattning SICStus länkmoduler ger möjlighet att blanda Prolog-

Läs mer

Flera processer. Minneshantering. Trashing kan uppstå ändå. Ersätta globalt

Flera processer. Minneshantering. Trashing kan uppstå ändå. Ersätta globalt Flera processer Minneshantering Operativsystem lektion 6 Potentiellt problem: Den sida som plockas bort behöver inte vara den sida som används minst!! Det kan finnas andra processer som inte körs eller

Läs mer

Operativsystem - input/output, skydd, virtualisering

Operativsystem - input/output, skydd, virtualisering Operativsystem - input/output, skydd, virtualisering Mats Björkman 2015-03-12 Lärandemål, I/O n Typer av I/O-enheter n Character, Block & Special n Minnesmappad I/O n Typer av I/O-programmering n Programmerad,

Läs mer

Testplanering, test-first, testverktyg

Testplanering, test-first, testverktyg Testplanering, test-first, testverktyg Mats Skoglund Department of Computer and Systems Sciences Stockholm University/Royal Institute of Technology Stockholm, Sweden 12 mars 2007 Mats Skoglund Page 1(33)

Läs mer

1.1 Runnable och Thread

1.1 Runnable och Thread 1 Trådar 1.1 Runnable och Thread I övningen är ShoutThread hårdkodad att använda just ShoutRunnable. Det typiska förfarandet brukar annars vara att skicka över din Runnable i konstruktor-anropet till Thread:

Läs mer

emopluppen Användning av "Ant" Niklas Backlund Version: 1.4 ( 2002/04/26 07:27:52 UTC)

emopluppen Användning av Ant Niklas Backlund Version: 1.4 ( 2002/04/26 07:27:52 UTC) emopluppen Användning av "Ant" Version: 1.4 ( 2002/04/26 07:27:52 UTC) Niklas Backlund Sammanfattning Det här dokumentet handlar om programmet Ant, som är en byggmiljö för programutvecklingsprojekt. Dess

Läs mer

Introduktion till objektorientering. Vad är objektorientering egentligen? Hur relaterar det till datatyper? Hur relaterar det till verkligheten?

Introduktion till objektorientering. Vad är objektorientering egentligen? Hur relaterar det till datatyper? Hur relaterar det till verkligheten? Introduktion till objektorientering Vad är objektorientering egentligen? Hur relaterar det till datatyper? Hur relaterar det till verkligheten? TDDD78, TDDE30, jonas.kvarnstrom@liu.se 729A85 jonas.kvarnstrom@liu.se

Läs mer

Vinjetter TDDC91 Datastrukturer och algoritmer

Vinjetter TDDC91 Datastrukturer och algoritmer Vinjetter TDDC91 Datastrukturer och algoritmer 17 augusti 2015 2 Scenario 1 Man har inom Posten Logistik AB skrivit programvara för sortering av kundinformation och vill standardisera användningen av sorteringsalgoritmer.

Läs mer

Linköpings Tekniska Högskola Institutionen för Datavetanskap (IDA), Software and Systems (SaS) (c) Klas Arvidsson

Linköpings Tekniska Högskola Institutionen för Datavetanskap (IDA), Software and Systems (SaS) (c) Klas Arvidsson Linköpings Tekniska Högskola Institutionen för Datavetanskap (IDA), Software and Systems (SaS) (c) Klas Arvidsson 2012-01-14 Introduktion Det första du behöver veta om PintOS är att det är ett riktigt

Läs mer

En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär:

En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär: Lösningsförslag för 725G45-tentan 3/11-10 1. Vad menas med Von Neumann-arkitektur? (2p) En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär: Data och instruktioner lagras i samma

Läs mer

Tentamen ID1004 Objektorienterad programmering October 29, 2013

Tentamen ID1004 Objektorienterad programmering October 29, 2013 Tentamen för ID1004 Objektorienterad programmering (vilande kurs), 29 oktober 2013, 9-13 Denna tentamen examinerar 3.5 högskolepoäng av kursen. Inga hjälpmedel är tillåtna. Tentamen består av tre sektioner.

Läs mer

+Överskådlighet Normalt sätt blir ett program skrivet i det procedurella paradigmet överskådligt. Modifikationer på delproblem kan ske med lätthet.

+Överskådlighet Normalt sätt blir ett program skrivet i det procedurella paradigmet överskådligt. Modifikationer på delproblem kan ske med lätthet. Uppgift 1 Ett programmeringsparadigm är i grund och botten ett sätt att arbeta, ett sätt att möta problem. Det finns flera olika paradigm där varje paradigm har sina egna styrkor och svagheter. Det som

Läs mer

Säkerhetskopiering - SQL

Säkerhetskopiering - SQL Säkerhetskopiering - SQL Funktionen säkerhetskopiering gör det möjligt för användaren att ta och återställa säkerhetskopior av HogiaFastighets databas. Teknisk beskrivning Säkerhetskopian tas av SQL Servern

Läs mer

Programvaruutveckling - Metodik 2016 Jonas Wisbrant

Programvaruutveckling - Metodik 2016 Jonas Wisbrant Föreläsning 3: Test och efterläsning om kodning Programvaruutveckling - Metodik 2016 Jonas Wisbrant 1 Kursinformation Detta har hänt: Pratat och skapat krav (och plan) Övning 2 Riskhantering, intressenter

Läs mer

Utforskande testning Så gör jag. Torbjörn Ryber Fearless Consulting

Utforskande testning Så gör jag. Torbjörn Ryber Fearless Consulting Utforskande testning Så gör jag Torbjörn Ryber Fearless Consulting Torbjörn Ryber Korrekt men ändå så fel! Weinberg: Exploring Requrements Först effekter sedan funktioner Vilka är kraven? Uttalade krav

Läs mer

TDDI02. Programmeringsprojekt. Föreläsning 3 Jonas Lindgren, Institutionen för Datavetenskap, LiU

TDDI02. Programmeringsprojekt. Föreläsning 3 Jonas Lindgren, Institutionen för Datavetenskap, LiU TDDI02 Programmeringsprojekt. Föreläsning 3 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Verifikation, Validering och Testning XP Extreme Programming Vad är ett fel? I engelskan

Läs mer

Objektorienterad konstruktion

Objektorienterad konstruktion Analys - Objektorienterad konstruktion Vad är objektorientering?» Ett sätt att angripa programmeringsproblem» Ett sätt att tänka när man programmerar Vad innebär objektorientering?» Att uppmärksamheten

Läs mer

C++ Slumptalsfunktioner + switch-satsen

C++ Slumptalsfunktioner + switch-satsen C++ Slumptalsfunktioner + switch-satsen Veckans avsnitt består av ett antal lite udda funktioner man kan ha nytta av när man skriver program. Det är en slumptalsgenerator och lite annat smått och gott.

Läs mer

TUTORIAL: SAMLING & KONSOLL

TUTORIAL: SAMLING & KONSOLL TUTORIAL: SAMLING & KONSOLL Denna tutorial är en fortsättning på den tutorial där vi skapade klassen Car och sedan objekt av denna klass. Vi skall nu lära oss att lagra dessa objekt i en samling och även

Läs mer

Fö 7: Operativsystem. Vad är ett operativsystem? Målsättning med operativsystem. Styr operativsystemet datorn?

Fö 7: Operativsystem. Vad är ett operativsystem? Målsättning med operativsystem. Styr operativsystemet datorn? Fö 7: Operativsystem Introduktion. Klassificering. Vad är ett operativsystem? Program som kontrollerar andra andra program. Gränssnitt mellan användare och hårdvaran. Kärnan. Historisk översikt. Typeset

Läs mer

Föreläsning 2. Operativsystem och programmering

Föreläsning 2. Operativsystem och programmering Föreläsning 2 Operativsystem och programmering Behov av operativsystem En dator så som beskriven i förra föreläsningen är nästan oanvändbar. Processorn kan bara ges enkla instruktioner såsom hämta data

Läs mer

Hogia Personal version 13.1.138 (2013-01-16)

Hogia Personal version 13.1.138 (2013-01-16) Hogia Personal version 13.1.138 Här följer en sammanställning av programförändringar som skett i version 12.1.16 till 13.1.138 av Hogia Personal. Hogia Personal version 13.1.138 (2013-01-16) Vi har gjort

Läs mer

Inledning. Vad är ett datorprogram, egentligen? Olika språk. Problemlösning och algoritmer. 1DV433 Strukturerad programmering med C Mats Loock

Inledning. Vad är ett datorprogram, egentligen? Olika språk. Problemlösning och algoritmer. 1DV433 Strukturerad programmering med C Mats Loock Inledning Vad är ett datorprogram, egentligen? Olika språk Problemlösning och algoritmer 1 (14) Varför använda en dator? Genom att variera de program som styr datorn kan den användas för olika uppgifter.

Läs mer

Slutrapport Get it going contracts

Slutrapport Get it going contracts Slutrapport Get it going contracts Författare: Anthony Dry Datum: 2011-06-02 Program: Utvecklare av digitala tjänster Kurs: Individuellt mjukvaruutvecklingsprojekt 7.5p Linnéuniversitetet (Kalmar) Abstrakt

Läs mer

Testning. 1. Inledning

Testning. 1. Inledning Testning 1. Inledning I all ingenjörsmässig verksamhet är testning en vedertagen metod för att fastställa om en hypotes, konstruktion eller produkt är korrekt och fungerar som avsett. Datorprogram är ofta

Läs mer

Objektorienterad programmering i Java Undantag Sven-Olof Nyström Uppsala Universitet Skansholm: Kapitel 11

Objektorienterad programmering i Java Undantag Sven-Olof Nyström Uppsala Universitet Skansholm: Kapitel 11 Objektorienterad programmering i Java Undantag Sven-Olof Nyström Uppsala Universitet Skansholm: Kapitel 11 Undantag Engelska: exceptions Skansholm: exceptionella händelser Fel som genereras om man försöker

Läs mer

Behörighetssystem. Ska kontrollera att ingen läser, skriver, ändrar och/eller på annat sätt använder data utan rätt att göra det

Behörighetssystem. Ska kontrollera att ingen läser, skriver, ändrar och/eller på annat sätt använder data utan rätt att göra det Behörighetssystem Ska kontrollera att ingen läser, skriver, ändrar och/eller på annat sätt använder data utan rätt att göra det Systemet måste kunna registrera vilka resurser, d v s data och databärande

Läs mer

FileCentral Desktop. Användarhandledning Version 1.0 2010-11-05

FileCentral Desktop. Användarhandledning Version 1.0 2010-11-05 FileCentral Desktop Användarhandledning Version 1.0 2010-11-05 Inf of lex Connect AB Sankt Eriksgatan 58 SE-112 34 Stockholm Sweden Tel: 08-555 768 60 Fax 08-555 768 61 inf o@inf of lexconnect.se www.inf

Läs mer

Programmering = modellering

Programmering = modellering Programmering = modellering Ett datorprogram är en modell av en verklig eller tänkt värld. Ofta är det komplexa system som skall modelleras I objektorienterad programmering består denna värld av ett antal

Läs mer

kl Tentaupplägg

kl Tentaupplägg Tentaupplägg TIPS 1: Läs igenom ALLA uppgifterna. Välj den du känner är lättast först. Det kan gärna ta 10-20 minuter. Försök skriva saker som kan vara problem i uppgifterna. Är det något du absolut kommer

Läs mer

Skolan för Datavetenskap och kommunikation. Programmeringsteknik. Föreläsning 16

Skolan för Datavetenskap och kommunikation. Programmeringsteknik. Föreläsning 16 Skolan för Datavetenskap och kommunikation Programmeringsteknik Föreläsning 16 Grafiskt användargränssnitt (GUI) Använd modulen tkinter, som har klasser för komponenter. Se "Referenser" på kursens webbsida:

Läs mer

In- och Utenheter. Fö 3: In/Ut matning och kopplingsstruktur. Några exempel. Egenskaper. In- och Utenheter. Styrning.

In- och Utenheter. Fö 3: In/Ut matning och kopplingsstruktur. Några exempel. Egenskaper. In- och Utenheter. Styrning. Fö 3: In/Ut matning och kopplingsstruktur In- och Utenheter In- och Utenheter. Styrning. I/O-kanalenheter Kopplingsstruktur. Buss. Två huvudsakliga typer av I/O enheter: - Interaktiva. Exempelvis en terminal.

Läs mer

Programvara i säkerhetskritiska tillämpningar

Programvara i säkerhetskritiska tillämpningar Programvara i säkerhetskritiska tillämpningar Programvara får inte bidra till att person, egendom eller miljö skadas 2003-09-02 1 Systemsäkerhetsprocessen vid försvarsmakten materielupphandling beskrivs

Läs mer

Objektorienterad programmering, allmänt

Objektorienterad programmering, allmänt Objektorienterad programmering, allmänt Sven-Olof Nyström Uppsala Universitet 17 juni 2005 1 Vilka egenskaper vill vi att program ska ha? Förslag (en partiell lista): De ska... gå snabbt att skriva vara

Läs mer

Viktiga egenskaper hos ett program (Meyer): Objektorienterad programmering, allmänt. Vilka egenskaper vill vi att våra program ska ha?

Viktiga egenskaper hos ett program (Meyer): Objektorienterad programmering, allmänt. Vilka egenskaper vill vi att våra program ska ha? Viktiga egenskaper hos ett program (Meyer): Objektorienterad programmering, allmänt Sven-Olof Nyström Uppsala Universitet 17 mars 2005 1. Korrekthet 2. Robusthet 3. Utökbarhet 4. Återanvändbarhet 5. Kompatibilitet

Läs mer

Programmering i C++ Kompilering från kommandoraden

Programmering i C++ Kompilering från kommandoraden Programmering i C++ Kompilering från kommandoraden Sven Gestegård Robertz Datavetenskap, LTH 9 november 2015 Sammanfattning Ibland vill man, av olika anledningar, inte använda en stor integrerad utvecklingsmiljö

Läs mer

Formella metoder. Loop-program som statetransformers. Betrakta följande problem. specifikationen.

Formella metoder. Loop-program som statetransformers. Betrakta följande problem. specifikationen. 8Att bevisa egenskaper om program Formella metoder... 1 Loop-program som statetransformers... 1 Några exempel... 2 Partiell korrekthet och total korrekthet... 3 Programspecifikation... 3 Hoarelogik och

Läs mer

Vad händer när man kör ett program? Program och processer. Funktionsanrop. Avsluta programmet

Vad händer när man kör ett program? Program och processer. Funktionsanrop. Avsluta programmet Vad händer när man kör ett program? Program och processer När man kompilerar ett program och sedan länkar ihop det så stoppar länkaren in lite extra kod i programmet. Det är denna kod som i sin tur anropar

Läs mer

PayByBill Betalmoduler v1.09

PayByBill Betalmoduler v1.09 PayByBill Betalmoduler v1.09 Utvecklad för Opencart 1.5.2.1 och nyare Vad är detta? Detta är arvato Finance AB s officiella betalmoduler till OpenCart. Modulen är gratis men för att använda den så måste

Läs mer

Klientprogrammering mot databaser

Klientprogrammering mot databaser Klientprogrammering mot Databaser Java DataBase Connectivity, JDBC Klientprogrammering mot databaser Native API olika för olika DBMS, ofta i C/C++ ODBC, Open Datbase Connectivity samma API för olika databashanterare.

Läs mer

Typhierarkier del 1 Gränssnitt, ärvning mellan gränssnitt, ärvning mellan klasser

Typhierarkier del 1 Gränssnitt, ärvning mellan gränssnitt, ärvning mellan klasser TDDD78, TDDE30, 729A85 jonas.kvarnstrom@liu.se 2019 Typhierarkier del 1 Gränssnitt, ärvning mellan gränssnitt, ärvning mellan klasser Hur används hierarkier för att modellera nära relaterade typer? Nu:

Läs mer

Användarhandledning för The Secure Channel

Användarhandledning för The Secure Channel Användarhandledning för The Secure Channel 1 Inledning Det här dokumentet beskriver hur programvaran ska användas. Dokumentet beskriver programversion 1.6.1 av The Secure Channel. Användarhandledningen

Läs mer

Praktisk hantering av automatiserade testfall T U A C A P T M F T W!

Praktisk hantering av automatiserade testfall T U A C A P T M F T W! Praktisk hantering av automatiserade testfall T U A C A P T M F T W! Das TOC (Hålla låda i ca 35 min) Presentation quien soy yo? Bakgrund vad, varför? Hur man kan testa (in-) parametrar och regelverk på

Läs mer

Inkapsling (encapsulation)

Inkapsling (encapsulation) UML UML är en standard för att dokumentera och visualisera sina tankar och beslut under analys och design. Att lära sig allt om UML får inte plats i den här kursen, men vi kommer lära oss vissa delar.

Läs mer

Databasföreläsning. Del 2 lagrade procedurer, vyer och transaktioner

Databasföreläsning. Del 2 lagrade procedurer, vyer och transaktioner Databasföreläsning Del 2 lagrade procedurer, vyer och transaktioner Lagrade procedurer (Stored procedures) En stored procedure är en procedur (funktion) lagrad i en databas, och exekveras direkt på databasservern

Läs mer

Lite om felhantering och Exceptions Mer om variabler och parametrar Fält (eng array) och klassen ArrayList.

Lite om felhantering och Exceptions Mer om variabler och parametrar Fält (eng array) och klassen ArrayList. Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Objektorienterad programvaruutveckling GU (DIT011) Föreläsning 3 Innehåll Lite om felhantering och Exceptions Mer om variabler och parametrar

Läs mer

CABA Win Brytaranalysprogram

CABA Win Brytaranalysprogram CABA Win Brytaranalysprogram A Megger Group Company CABA WIN CABA Win Brytaranalysprogram Ett effektivt brytarunderhåll kräver en omfattande och noggrann provning. Möjligheten att på ett korrekt sätt jämföra

Läs mer

Risk som 2-dimensionellt begrepp

Risk som 2-dimensionellt begrepp Risk som 2-dimensionellt begrepp Sannolikheten för olycka (olycksfrekvens, likelihood) samt Konsekvensen av den inträffade olyckan Exempel: Riskreduktion Riskmatris Riskdiagram m i a kvalitativa p 2 parametrar

Läs mer

TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng

TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng TENTAMEN I PROGRAMMERING Ansvarig: Jan Skansholm, tel 7721012 Betygsgränser: Hjälpmedel: Sammanlagt maximalt 60 poäng. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng Skansholm,

Läs mer

Institutionen för elektro- och informationsteknologi, LTH

Institutionen för elektro- och informationsteknologi, LTH Datorteknik Föreläsning 5 Realtidssystem och realtidsprogrammering Mål Att du ska förstå hur avbrott används för - Mätning - Styrning - Stöd för körning av flera processer Att du ska förstå begreppet tråd

Läs mer

Datorteknik. Föreläsning 5. Realtidssystem och realtidsprogrammering. Institutionen för elektro- och informationsteknologi, LTH.

Datorteknik. Föreläsning 5. Realtidssystem och realtidsprogrammering. Institutionen för elektro- och informationsteknologi, LTH. Datorteknik Föreläsning 5 Realtidssystem och realtidsprogrammering Mål Att du ska förstå hur avbrott används för - Mätning - Styrning - Stöd för körning av flera processer Att du ska förstå begreppet tråd

Läs mer

INSTITUTIONEN FÖR DATA- OCH INFORMATIONSTEKNIK

INSTITUTIONEN FÖR DATA- OCH INFORMATIONSTEKNIK INSTITUTIONEN FÖR DATA- OCH INFORMATIONSTEKNIK DIT162 Realtidssystem, 7,5 högskolepoäng Real-Time Systems, 7.5 credits Fastställande Kursplanen är fastställd av Institutionen för data- och informationsteknik

Läs mer

Belastningstester med Visual Studio 2008 - Gränssnittet

Belastningstester med Visual Studio 2008 - Gränssnittet Belastningstester med Visual Studio 2008 - Gränssnittet Belastningstester med Visual Studio 2008 - Gränssnittet ANVÄNDARGRÄNSSNITTET Belastningstester med Visual Studio 2008 - Gränssnittet Test typer Alla

Läs mer

ClamatorVoiceSystem II

ClamatorVoiceSystem II 1 (10) MANUAL ClamatorVoiceSystem II 1 INTRODUKTION... 2 1.1 Systemkrav... 2 2 INSTALLATION... 2 3 FUNKTION... 3 3.1 ARKITEKTUR... 3 3.1.1 Larmövervakning... 5 3.1.2 Urval av larm... 5 3.1.3 Blockeringslogik...

Läs mer

Säkra Designmönster (Secure Design Patterns)

Säkra Designmönster (Secure Design Patterns) Säkra Designmönster (Secure Design Patterns) Marcus Bendtsen Institutionen för Datavetenskap (IDA) Avdelningen för Databas- och Informationsteknik (ADIT) Säkra designmönster Beskrivningar eller mallar

Läs mer

Nedladdning från PA. 1. Koden (nyckeln) 2. Programmet. SPSS Statistics 23. Gunilla Rudander IBM Corporation

Nedladdning från PA. 1. Koden (nyckeln) 2. Programmet. SPSS Statistics 23. Gunilla Rudander IBM Corporation Nedladdning från PA Gunilla Rudander 1. Koden (nyckeln) 2. Programmet SPSS Statistics 23 2014 IBM Corporation Koden (nyckeln) IBM Confidential 2014 IBM Corporation Länk, finns även på analyticsbloggen

Läs mer

F5: Högnivåprogrammering

F5: Högnivåprogrammering F5: Högnivåprogrammering Parameteröverföring Koppling mellan låg- och högnivåprogrammering Lokala variabler Heapen Datatyper 1 Subrutin, parameteröverföring: 1(3) Via register genom värde Skicka data via

Läs mer

SIMULERING. Vad är simulering?

SIMULERING. Vad är simulering? SIMULERING Simulering är utan tvivel ett av de områden vi (dvs. Trilogik Konsult) ser som våra största specialiteter! Vi skulle därför kunna skriva sida upp och sida ner i ämnet, men skall ändå försöka

Läs mer

F5: Högnivåprogrammering

F5: Högnivåprogrammering 1 F5: Högnivåprogrammering Parameteröverföring Koppling mellan låg- och högnivåprogrammering Lokala variabler Heapen Datatyper 1 Subrutin, parameteröverföring: 1(3) Via register genom värde Skicka data

Läs mer

Lunds Tekniska Högskola Datorarkitektur med operativsystem EITF60. Superscalar vs VLIW. Cornelia Kloth IDA2. Inlämningsdatum:

Lunds Tekniska Högskola Datorarkitektur med operativsystem EITF60. Superscalar vs VLIW. Cornelia Kloth IDA2. Inlämningsdatum: Lunds Tekniska Högskola Datorarkitektur med operativsystem EITF60 Superscalar vs VLIW Cornelia Kloth IDA2 Inlämningsdatum: 2018-12-05 Abstract Rapporten handlar om två tekniker inom multiple issue processorer

Läs mer

LEX INSTRUKTION REPLIKERING UPPGRADERING

LEX INSTRUKTION REPLIKERING UPPGRADERING LEX INSTRUKTION REPLIKERING UPPGRADERING Innehållsförteckning LEX INSTRUKTION REPLIKERING UPPGRADERING... 1 1 REPLIKERING AV LEXPROD.AES TILL LEXEXT.AES... 1 2 GENERERA SQL-SCRIPT FRÅN DEN EXISTERANDE

Läs mer

Fallstudie: numerisk integration Baserad på läroboken, Case Study 19.9

Fallstudie: numerisk integration Baserad på läroboken, Case Study 19.9 Fallstudie: numerisk integration Baserad på läroboken, Case Study 19.9 Beräkningsvetenskap DV Institutionen för Informationsteknologi, Uppsala Universitet 30 september, 2013 Att beräkna arbete Problem:

Läs mer

Systemsäkerhet i ett marint ledningssystem

Systemsäkerhet i ett marint ledningssystem Systemsäkerhet i ett marint ledningssystem SaabTech Systems levererar sitt ledningssystem till korvett typ Visby och till moderniseringar av korvetter av typ Stockholm/Malmö Detta program bestående av

Läs mer

(Lösningsförslag finns sist i denna fil.)

(Lösningsförslag finns sist i denna fil.) (Lösningsförslag finns sist i denna fil.) Läser externa signaler. Har 64 ingångar (kanaler), från 0 till 63. Kan bara avläsa en ingång i taget. Avlästa värdet positivt 16-bitars tal. Varje läsning tar

Läs mer

M7005 och IBR Användarhandbok

M7005 och IBR Användarhandbok 181101/190313/190521/SJn M7005 och IBR Användarhandbok M7005 och IBR - Användarhandbok OBSERVERA Informationen i detta dokument kan ändras utan föregående meddelande. Innehållet är icke bindande. Matematikföretaget

Läs mer