1 - Zeitgeber [ID:36122]
50 von 109 angezeigt

Wir wollen unser Stubs um ein Zeitscheiben-Scheduling erweitern.

Also brauchen wir einen Zeitgeber.

Aber welche haben wir dabei, einen modernen x86er überhaupt zur Verfügung?

Der erste IBM PC 1981 hatte bereits den Programmable Interval Timer, ursprünglich ein Intel 8253

Chip.

Der Bausteim wird mit einer Frequenz von 1.193.181,periode 81006.1 deportiert.

Eine krumme Zahl mit der sich eigentlich gar nicht so schön rechnen lässt.

Wer hat das verbrochen?

Woher kommt die Zahl?

Nun damals war es aus Kostengründen noch üblich Fernseher als Ausgabe für die PCs zu verwenden.

Der in Nord-

Amerika verbreitete NTSC Standard arbeitet mit einer Frequenz von 3.579.545, vom Challenge

1545, die Periode IV, V-Herz- undAntnak-Version, was exakt das dreifache ist.

Da nun damals Schwingpartsinnig besonders günstig waren, hat man versucht, um Kosten zu sparen

die ganzen Frequenzen eines Systems an NTSC anzupassen und stattdessen nur Frequenstaile

verwendet.

Selbst der Systemtakt des ersten IBM PCs mit rund 4,77目Hertz und somit 3 MP3 der

NTSC-Frequenz wurden dadurch best chromt.

NTSC spielt heutzutage keine Rolle mehr.

aber wegen der Arbeitskompatibilität wurde die Frequenz im PID natürlich beibehalten.

Ursprünglich hing der erste seiner drei Timer beim PIC an der ersten Leitung,

hatte dort also auch die höchste Priorität bei Unterbrechungen.

Der zweite Timer wurde zum Auffrischen der Arbeitsspeicher verwendet.

Die Speicher der günstigen DRAM basieren auf Kondensatoren,

welche regelmäßig wieder geladen werden müssen, und frühe war der PID dafür verantwortlich.

Heutige Arbeitsspeicher haben natürlich eine eigene Hardware dafür, teilweise ist dieser

Timer im PID entsprechend auch gar nicht mehr vorhanden.

Den dritten Timer hingegen finden wir bei manchen Desktop-Systemen noch, unter anderem

auf unseren Testkisten.

Mit ihm kann man den PC-Speaker ansteuern, welcher insbesondere vor den Zeiten der Soundkarten

häufig zum Einsatz kam.

Der Piepser kennt zwar nur an oder aus, aber durch Puls-Dauer-Modulation, kurz PWM, kann

man unterschiedliche Töne erzeugen.

Ein Beispiel dazu folgt in Aufgabe 6.

Heutzutage haben wir auch keinen PIC mehr, sondern verwenden IOAPIC und LAPIC.

Und wenn man sich das nun anschaut vom PIT über IOAPIC, APIC BUS und LAPIC an die CPU,

dann sieht man schon, dass der Timer durchaus nicht optimal angebunden ist.

Aber für das Zeitscheiben-Scheduling reicht das eigentlich aus.

Bis Wintersemester 2013 wurde auch tatsächlich der PIT dafür in Stubs verwendet, aber das

geht besser.

Trotzdem verwenden wir den PIT in Stubs an anderen Stellen, da er einfach zu programmieren

ist, zum Beispiel beim Systemstart, um gewisse Zeiten abzuwarten.

Als nächster Zeitgeber wurde ab 1984 die Real-Time-Glock eingebaut, bei welcher man sich dann durchgerungen

hat einen extra Schwingquads einzubauen.

Und zwar einen, der auch viel Verwendung im Alltag, beispielsweise in Armbanduhern findet.

Dieser hat eine Frequenz von 32.768 Hertz, was auch für uns eine wunderschöne Zahl zum

Rechnen ist.

Er ist auch in der Lage Unterbrechungen auszulösen, Standard-Einstellung ist etwa Millisekunden-Takt,

kann aber grob angepasst werden.

Früher war er mit der ersten Leitung des zweiten kaskadierten Picks verbunden, was den Nachteil

Teil einer Videoserie :
Teil eines Kapitels:
Zeitscheibenscheduling

Zugänglich über

Offener Zugang

Dauer

00:07:42 Min

Aufnahmedatum

2020-08-13

Hochgeladen am

2021-09-20 19:06:24

Sprache

de-DE

Überblick über die vorhandenen Timer in einem x86er System für Aufgabe 5 der Lehrveranstaltung Betriebssysteme.

Folien und Transkript zum Video.

Tags

betriebssysteme operating systems stubs timer
Einbetten
Wordpress FAU Plugin
iFrame
Teilen