summaryrefslogtreecommitdiff
path: root/README
blob: c9c5ca2f2156084253c2a6c00aa8a8f9a307778a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
Linux Kernelprogrammierung - Sommersemester 2015
================================================
Manuel Traut <manut@mecka.net>

Organisatorisch
---------------

Termine:
~~~~~~~~
* 15.3.

* 13.4.

* 20.4.

* 27.4.

* 4.5.

* 11.5.

* 18.5.

* evt. 29.6.


Prüfung:
~~~~~~~~
schriftlich, 60 Minuten

Hilfsmittel: handschriftliche Mitschriebe

Material:
~~~~~~~~~
http://mecka.net/hswgt

Script:
~~~~~~~
Mitschriebe gerne an
manut@mecka.net

Literatur:
~~~~~~~~~~
http://lwn.net

http://heise.de/open <- Kernel Log

http://kernelnewbies.org

Corbet, Rubini, Kroah-Hartmann: Linux Device Drivers 3rd Edition
  http://lwn.net/Kernel/LDD3

Kroah-Hartmann: Linux Kernel In A Nutshell
  http://www.kroah.com/lkn

Bovet, Cesati: Understanding The Linux Kernel (34,95)

Love: Linux Kernel Development (29,95 EUR)

Film:
~~~~~
http://www.youtube.com/watch?v=YqqkdgE8RpM

Bewertung:
~~~~~~~~~~
http://www.meinprof.de/uni/prof/51131

Exkursion:
~~~~~~~~~~

21. - 22.3. 2015:

http://chemnitzer.linux-tage.de/


geplante Themen:
----------------

Termin1
~~~~~~~

- Voraussetzungen fuer Linux

- Linux Desktop vs. embedded Linux:
 * Kernel vs. Userspace
 * Fedora, Debian, ubuntu ..
 * Android
 * KDE / GNOME
 * CPU Architekturen
 * cross

- Kernelentwicklung
 * Mainline / Maintainer
 * syscalls (stabil)
 * interne API (instabil)

- Versionskontrolle:
 * diff / patch
 * quilt
 * git

Termin2
~~~~~~~
- Kernel konfigurieren
- Kernel kompilieren
- Kernel Dokumentation

Termin3:
~~~~~~~~
- Datenuebergabe zwischen Userspace und Kernel

- Kernelarchitektur
  * Core
  * Driver
  * Arch
  * Coding Style
  * Review verschiedener Treiber

- Kernelmodule
  * 1. Kernelmodul 'Hello world'
  * registrieren bei Subsystemen (char dev)

Termin4
~~~~~~~
- Tracing
- UIO

Termin 5 & 6
~~~~~~~~~~~~
- Kernelprogrammierung an einem Beispiel

Termin 7
~~~~~~~~
- Maintainer Vortrag & Questioning
- Pruefungsvorbereitung