Göm meny
Gäller för: HT24

Seminarium 1

Information om hur begreppsseminarierna går till hittar du på sidan Seminarier & Rapporter.

Målet med detta begreppsseminarium är att du ska få

  • förståelse för vilken roll processorn har när det kommer till att köra program
  • förståelse för vilken roll RAM-minne har när det kommer till att köra program
  • en övergripande förståelse hur processorn och RAM-minnet jobbar tillsammans när ett program körs; vägen från instruktion i en fil till en instruktion som utförs av processorn
  • förståelse för vad ett operativsystem är och vilka syften de uppfyller

Förberedelsematerial

Videomaterialet inför det här seminariet kommer från serien Crash Course Computer Science som bland annat finns på Youtube. Hela serien är mycket bra och rekommenderas i sin helhet för den nyfikne. För det här seminariet är följande videos lämpligt förberedelsematerial. De videos som är obligatoriska är markerade med fetstil.

  1. Boolean Logic & Logic Gates [10 min]
  2. Representing Numbers and Letters with Binary [10 min]
  3. How Computers Calculate - the ALU [11 min]
  4. Registers and RAM [12 min]
  5. The Central Processing Unit (CPU) [11 min]
  6. Instructions & Programs [10 min]
  7. Early Programming [9 min]
  8. The First Programming Languages [11 min]
  9. Operating Systems [13 min]
  10. Memory & Storage [12 min]

Nedan hittar ni parallellt material om ni vill läsa om det som tas upp i videosarna på egen hand.

  • Lunell (2011). Datorn i världen, världen i datorn.
    • Kapitel 2.1-2.7. Om minne och processorn, samt vad som händer när ett program körs.
    • Kapitel 6.1-6.7, 6.9-6.10, 6.12. Om filsystemet.

Prova på-övningar: processor- och minnesanvändning

Ta reda på vilka program du kan använda för att ta reda på hur mycket RAM och CPU som program använder.

Gör minst en av nedanstående undersökningar på egen hand eller tillsammans i din pargrupp innan seminariet, för att diskutera dem på seminariet.

  • Vilka aktiviteter i olika program ökar dess CPU- och/eller minnesanvändning. Fundera över varför. Finns det något som är överraskande där minnes- eller CPU-användning inte är som du tänkt?
  • Ta reda på processor- och minnesanvändning när ett Pythonprogram körs. Här hittar ni pythonprogram ett exempelprogram ni kan köra. slumprakna.py - ladda ner och kör med python3 slumprakna.py.
  • Försök att skriva ett Python-program som antingen använder mycket CPU eller RAM.
  • Kan minnesanvändningen för ett program minska medan det kör? Fundera på varför/varför inte? Hitta exempel (genom att prova olika saker och titta på ett programs minnesanvändning) och ta med er det till seminariet.

Diskussionsfrågor

Nedan är förslag på diskussionsfrågor till seminariet. Ni får självklart även komma med egna förslag.

  • Försök att definiera “processorkraft”. Vad betyder det när 100% processorkraft används? Ibland visas mer än 100% vad betyder det?
  • Vad i ett pythonprogram använder minne och vad använder processorn?
  • Vad menas med att operativsystemet tillhandahåller ett abstraktionslager mellan hårdvara och mjukvara? Försök komma på exempel där samma princip med abstraktionslager används (behöver inte vara inom datavetenskap).
  • En processors hastighet kan uttryckas i GHz, t.ex. 2.5GHz som är processorns klockfrekvens, men vad innebär klockfrekvensen egentligen för exekveringen av ett program?
  • Vad gör operativsystem för att göra det möjligt att köra fler program samtidigt än antalet processorer i en dator?
  • Vad är syftet med att ha ett antal olika typer av minne?
  • Vilket syfte har en st

Entry Ticket

Efter att du gått igenom förberedelsematerialet kan du fylla i din Entry Ticket här


Sidansvarig: Johan Falkenjack
Senast uppdaterad: 2024-07-26