582303 Verkkosovellusten toteuttaminen (4 ov)
582303 Implementering av nätverksapplikationer (4 sv)
582303 Network Programming (4 cu)
Kurssin sisältö, kevät 2004
Kurssi perustuu Stevensin kirjan Unix Network Programming, Volume 1, 2nd
Edition (Prentice-Hall, 1998) lukuihin 1-27. Lisälukemistona Stevensin
kirjan toinen osa Unix Network Programming, Volume 2, 2nd Edition
(Prentice-Hall, 1999) on hyödyllinen, erityisesti kurssin osassa 2
(Unix sovellusalustana) ja 5.1 (Säikeet) käsiteltävien asioiden kohdalla.
Alla oleva asioiden käsittelyjärjestys on viitteellinen, mutta se kattaa
kurssilla käsitellyt asiat.
Koealue: kurssin kokeeseen tulee luennoilla ja harjoituksissa
käsitellyt asiat. Alue kattaa kirjan luvut 1-27, poislukien luvut
17, 24, 25 ja 26.
The exam area covers the chapters 1-27 of the course book
(Stevens: Unix Network Programming, Volume 1, 2nd Edition,
Prentice-Hall, 1998), except the chapters 17, 24, 25 and 26.
- Johdanto (Ch. 1-2)
- Unix-prosessit ja TCP/IP-tietoliikenne
- asiakas-palvelija -malli
- Unix sovellusalustana (UNP, Vol 2)
- Systeemikutsurajapinta
- Prosessien hallinta
- Prosessien välinen kommunikointi Unix-järjestelmissä
- Pistokkeiden käytön perusteet (Ch. 3-9)
- Pistokerajapinta (Socket API)
- TCP-pistokkeet (tavuvirtapistokkeet Internet-alueella) (Ch. 4-5, 2)
- UDP-pistokkeet (tietosähkepistokkeet Internet-alueella) (Ch. 8, 2)
- Nimi- ja osoitemuunnokset (Ch. 9)
- Pistokeoptiot (Ch. 7)
- I/O lomitus (Multiplexing): select() ja sen käyttö (Ch. 6)
- Pistokkeiden monipuolisempi käyttö (Ch. 10-23)
- Monipuolisempi I/O (Ch.13)
- Pistokkeet Unix-alueella (Ch. 14)
- Nonblocking I/O (Ch. 15)
- Pistokkeiden käytön erityispiirteitä: lipukkeet, ioctl-operatioita,
OOB-data, I/O signaalit (Ch. 16, 20-22)
- Pistokkeet ja IPv6 (Ch.10)
- Yleislähetys, monilähetys (broadcasting, multicasting, Ch. 18-19)
- Palvelijoiden ja asiakkaiden suunnittelusta
- Säikeiden käyttö (Threads, Ch. 23)
- Demoniprosessit, Internet-demoni (inetd) (Ch. 12)
- Palvelijoiden toteutusnäkökohtia (Ch. 27)
Sivu luotu 27.11.2003,
Markku.Kojo@cs.Helsinki.FI
|