F1 - Introduction Flashcards
Concurrency är?
När två eller fler saker sker nästan samtidigt.
Concurrent programming är?
När två eller fler “tasks” görs nästan samtidigt och med samma CPU
En task är?
en enhet av programmet som kan köras samtidigt som andra enheter vid concurrent programming.
Parallelprogrammering är?
När två tasks körs samtidigt utan att dela på CPU.
Vad är skillnaden på Multitasking och multithreading?
Multitasking: är när flera program ger skenet av att köras samtidigt. Detta är centralt för alla moderna operativsystem.
Multithreading: är en form av multitasking inom ett system.
Vad är skillnaden på Multitasking och multithreading?
Multitasking: är när flera program ger skenet av att köras samtidigt. Detta är centralt för alla moderna operativsystem.
Multithreading: är en form av multitasking inom ett system.
Vad är en process?
Det är en instans av ett program som körs. Detta görs i samband med att ett program startar, det får då också ett id och minnesplats.
Vad innehåller en process?
Den innehåller:
- programinstruktioner i maskinspråk.
- ett stack memory för att hålla koll på aktiva metoder.
- ett heap memory (kolla upp)
- en program counter.
- övriga resurser, bl.a säkerhetsinformation.
En tråd är?
En singulär sekventiellt flöde av kontroll genom inom ett program.
Hur många trådar måste en process innehålla?
Minst en tråd, men den kan innehålla fler vid multithreading.
Har en tråd en adress eller en stack?
Den har en egen stack men inte en egen adress.
Vad delar flera trådar inom samma process på?
De delar på:
- adress space.
- programkod.
- data.
Om en applikation har en “single path of execution”, vad gör den då?
Den kör enbart på en tråd, d.v.s att den enbart avänder main-metoden i java för att köra programmet.
Vad är det för likhet mellan en tråd och en process?
Båda är enheter som exekverar.
Process: är exekvering av ett program avskilt från andra processer vilket betyder att den kör på sin egna minnesplats.
Tråd: körs inom adressplatsen av en process, den exekverar delar eller helheten av ett program.
Multithreading och parallellprograming är två typer av?
Concurrency.