Yleistä
Luennot maanantaisin (klo 14.15) ja keskiviikkoisin (klo 10.15) aikavälillä 27.10.-03.12.2008. Päätedemot kerran viikossa.
Kurssilla käydään läpi seuraavia asioita: tietokonejärjestelmä abstraktina systeeminä, suoritinarkkitehtuurit, käskykannat, hierarkkinen muisti, väylät, ohjelman suoritus ja tulkinta, tietokonejärjestelmän tehokkuus.
Kurssin suoritus koostuu kahdesta osasta: 1) tekninen päätetentti sekä 2) faktoihin ja teoriaosuuteen perustuvat kirjallinen tentti. Kurssin harjoituksista ei myönnetä erillisiä hyvityspisteitä, mutta päätetenttiä varten tarvitset työskentelyrutiinia, jota saat harjoituksia tekemällä.
Esitiedot: Perusohjelmointitaito ja hieman ymmärrystä käyttöjärjestelmistä
Laajuus: 3 op
Kurssin sisältö
| Historiaa ja tietokoneen kehittymiseen vaikuttaneita tekijöitä | |
| Tietokone abstraktina yksikkönä | |
| Tietokoneen ohjaaminen | |
| Käskyn ja datan esittäminen | |
| Suorittimen sisäinen toiminta; käskyjakso, muistin osoittaminen, | |
| liukuhihna | |
| Hierarkkinen muisti; rekisterit, välimuisti, keskusmuisti, | |
| ulkoinen muisti, off line -muisti | |
| Kiintolevy; levyn sisäinen rakenne, levyn osoittaminen, RAID | |
| Tietokoneen käynnistysprosessi | |
| Nykyaikaisen prosessorin tehostamistoimet; | |
| suoritusjärjestyksen muuttaminen, rekistereiden uudelleennimeäminen, | |
| P4, IA-64 | |
| Luennot | |
| 1. luento (27.10.2008) | |
| 2. luento (29.10.2008) | |
| 3. luento (03.11.2008) | |
| 4. luento (05.11.2008) | |
| 5. luento (10.11.2008) | |
| 6. luento (12.11.2008) | |
| 7. luento (17.11.2008) | |
| 8. luento (19.11.2008) | |
| 9. luento (24.11.2008) | |
| 10. luento (26.11.2008) | |
| 11. luento (01.12.2008) | |
| 12. luento (03.12.2008) | |
| Demot | |
| 1. demot (vko 44) | |
| 2. demot (vko 45) | |
| 3. demot (vko 46) | |
| 4. demot (vko 47) | |
| 5. demot (vko 48) | |
| 6. demot (vko 48) | |
Oheislukemista ja muuta aiheeseen liittyvää
- Pasi Koikkalainen ja Pekka Orponen: Tietotekniikan perusteet (luentomoniste)
- David Patterson ja John Hennessy: Computer Organization and Design
- William Stallings: Computer Organization and Architecture - Designing for Performance
- Noam Nisan ja Shimon Schocken: The Elements of Computing Systems: Building a Modern Computer from First Principles
- Andrew S. Tanenbaum: Structured Computer Organization
- Greg W. Scragg: Computer Organization - A Top Down Approach
- Gallery of Famous Mathematicians (matemaatikot ovat vaikuttaneet tietotekniikan kehitykseen)
- Martin Davis: Tietokoneen esihistoria Leibnizista Turingiin
- William Aspray (toim.): Computing Before Computers
- American University Computing History Museum - Virtual Museum Tour
- Suomen tietojenkäsittelymuseo
- Computer History Museum - Timeline of Computer History
- Historic Computer Images
- Mikä Unicode on?
- IEEE-754 Calculators
- MikroPC:n artikkeli optisista levyistä
- C++ Language Tutorial
- Bruce Eckel: Thinking in C++
- Jukka Korpela: Tietoa C-ohjelmointikielestä (ja C++:sta) Internetissä
- Jonathan Bartlett: Programming from the Ground Up
- Technical x86 processor information
- IA-32 Intel Architecture Software Developer’s Manual Volume 1: Basic Architecture
- Intel 64
- AMD 64
- Paul Carter: PC Assembly Language
- The Netwide Assembler (NASM)
- NASM x86 Assembly Quick Reference
- Ram Narayan: Linux assemblers: A comparison of GAS and NASM