Wer einen PC nutzt, ist sicher schon mehr als einmal über solche Situationen gestolpert.
- Der PC verlangt manchmal einen Neustart, etwa nach einem Betriebssystem-Update. Was ist der Unterschied zwischen „Herunterfahren und Einschalten“ und „Neustarten“?
- Das Smartphone wird nach langer Nutzung träge. Warum hilft es, es aus- und wieder einzuschalten?
Die meisten Menschen tun das einfach gedankenlos, und nur wenige können erklären, warum es funktioniert. Verfolgt man jedoch jeden Fall bis zur Wurzel, teilen sich beide denselben Grund.
Solange ein PC oder Smartphone läuft, stapelt das Betriebssystem (die zugrundeliegende Systemsoftware) immer mehr „aktuell Gemerktes“ auf den Speicher. Ein Neustart ist der Vorgang, all das auf null zu setzen und von Grund auf neu aufzubauen. Und unter Windows 10/11 sind „Herunterfahren und Einschalten“ und „Neustarten“ tatsächlich nicht dasselbe (dazu kommen wir in §3-2).
In diesem Artikel arbeiten wir Folgendes auf:
- Was Speicher eigentlich ist und warum er verschwindet, sobald der Strom weg ist (§1)
- Wie Apps laufen, indem sie sich Speicher vom Betriebssystem ausleihen (§2)
- Was ein Neustart tatsächlich Schritt für Schritt tut (§3)
- Was Speicherlecks sind und warum sie auftauchen, wenn man einen Rechner lange benutzt (§4)
- Die andere Falle neben dem Speicher ─ Ressourcen-Handles (§5)
- Warum Updates häufig einen Neustart verlangen (§6)
- Die „neustartfreie“ Welt, die Cloud und modernes Entwicklungs-Tooling schaffen (§7)
- Eine kleine Auswahl an Befehlen, die du selbst ausführen kannst, um das alles zu beobachten (§8)
Schritt für Schritt, mit Diagrammen und ohne Vorwissen.
Dieser Artikel ist der dritte Teil unserer Reihe „Wie ein PC wirklich funktioniert“, neben Warum funktioniert Software nicht ohne Installation? und Was ist eine IP-Adresse?. Wenn es bei der Installation um den Handschlag zwischen Betriebssystem und App geht und bei IP-Adressen um die Adresse auf der Netzwerk-Seite, dann handelt dieser Artikel von dem „Zustand“, den das Betriebssystem im Lauf der Zeit still und leise ansammelt.
1. Was Speicher wirklich ist ─ der Unterschied zwischen einem „Schreibtisch“ und einem „Bücherregal“
Um darüber zu sprechen, warum ein Neustart die Dinge wieder ins Lot bringt, brauchst du zuerst ein Gefühl für den Speicher (den „Schreibtisch“, an dem dein PC gerade arbeitet). Viele wissen vage, dass „der Computer langsamer wird, wenn der Speicher voll ist“, aber gehen wir einen Schritt tiefer.
1-1. RAM ist flüchtig ─ kein Strom, keine Daten
In einem PC gibt es im Wesentlichen zwei Arten von Datencontainern.
- RAM (Hauptspeicher) ─ schnell, aber alles darin verschwindet, sobald der Strom weg ist (flüchtig)
- SSD / HDD (Datenträger) ─ langsamer, aber der Inhalt übersteht das Ausschalten (nicht flüchtig)
Die Analogie mit Schreibtisch und Bücherregal passt gut. RAM ist dein Schreibtisch ─ jedes darauf ausgebreitete Dokument hast du sofort zur Hand, aber wenn du abends das Büro verlässt, wird der Schreibtisch leer geräumt. SSD/HDD sind das Bücherregal ─ etwas langsamer im Ein- und Ausräumen, aber die Inhalte bleiben über Nacht erhalten.
Das ist der physische Grund, warum ein Neustart den Speicherinhalt zurücksetzt. In dem Moment, in dem der Strom tatsächlich abfällt (oder sich eine Funktion so verhält, als wäre er das), ist alles weg, was das RAM gehalten hat, und das Betriebssystem muss das Benötigte wieder vom Bücherregal lesen und auf dem Schreibtisch ausbreiten.
1-2. Die Speicherhierarchie ─ Geschwindigkeit und Kapazität bilden eine umgekehrte Pyramide
Zwischen RAM und SSD/HDD liegen in Wirklichkeit feinere Schichten. Vom ultraschnellen kleinen Speicher innerhalb der CPU (Register) bis hinunter zu SSD/HDD, die den Großteil der Kapazität deines Rechners stellen, bilden Geschwindigkeit und Kapazität in etwa eine umgekehrte Pyramide.
[schnell / klein]
┌───────────────────────┐
│ CPU-Register │ wenige ns, dutzende Bytes pro Kern
├───────────────────────┤
│ L1-Cache │ ~1 ns, einige zehn KB pro Kern
├───────────────────────┤
│ L2-Cache │ wenige ns, hunderte KB bis wenige MB
├───────────────────────┤
│ L3-Cache │ ~10 ns, wenige MB bis dutzende MB pro CPU
├───────────────────────┤
│ RAM (Hauptspeicher) │ ~100 ns, 8 bis 64 GB
├───────────────────────┤
│ SSD │ ~100 µs (= 100.000 ns), 500 GB bis mehrere TB
├───────────────────────┤
│ HDD │ ~10 ms (= 10.000.000 ns), TB-Bereich
└───────────────────────┘
[langsam / groß]
Die wichtigsten Erkenntnisse: jede Stufe nach unten multipliziert die Zugriffszeit grob mit 10, und es verläuft eine klare Trennlinie zwischen L1 bis RAM (flüchtig) auf der einen und SSD/HDD (nicht flüchtig) auf der anderen Seite. Solange der Strom an ist, schichten Betriebssystem und Apps fortlaufend Zustand in die „schnellen flüchtigen“ Schichten. Sobald der Strom aus ist, wischt sich die obere Hälfte der Pyramide selbst sauber.
Wenn du „PC mit 16 GB RAM“ liest, meinen die 16 GB hier die RAM-Schicht, völlig getrennt von deiner SSD/HDD-Kapazität. Die Aufteilung „256 GB Speicher / 8 GB RAM“ beim Smartphone folgt derselben Unterscheidung.
2. Prozesse und Speicher ─ wie eine App „den Schreibtisch ausleiht“
§1 hat dir das Bild „Speicher als Schreibtisch“ geliefert. Als Nächstes sehen wir uns an, wie jede App diesen Schreibtisch tatsächlich nutzt. Ziel ist, sich genau vorstellen zu können, was bei einem Neustart zurückgesetzt wird.
2-1. Was ist ein Prozess? ─ jedes laufende Programm, eines nach dem anderen
Öffnest du den Task-Manager, siehst du Chrome, Slack, Explorer und Co. aufgereiht. Jede Zeile ist ein Prozess (eine Instanz eines laufenden Programms). Wenn du eine App startest, übergibt das Betriebssystem ihr einen Speicherblock und trägt sie als Prozess ein. Schließt du die App wieder, geht dieser Block zurück an das Betriebssystem und wird für jemand anderes wiederverwendet.
Die Beziehung lautet also:
- Ein Programm ist eine Datei auf dem Datenträger (
.exe,.appusw.) - Ein Prozess ist diese Datei, ins RAM entfaltet und gerade in Ausführung
Was bei einem Neustart zurückgesetzt wird, ist Letzteres ─ alle Prozesse, die gerade im RAM ausgebreitet sind.
2-2. Das Speicherlayout eines Prozesses ─ vier Räume
Die Speicherregion, die einem einzelnen Prozess zugewiesen ist, gliedert sich grob in vier „Räume“:
┌─────────────────────────┐ │ Text (Code) │ ← die auszuführenden CPU-Anweisungen ├─────────────────────────┤ │ Data / BSS │ ← globale Variablen und Konstanten ├─────────────────────────┤ │ Heap │ ← dynamisch zugeteilter Speicher (wächst ↓) │ ↓ │ │ │ │ ↑ │ │ Stack │ ← Aufzeichnungen von Funktionsaufrufen (wächst ↑) └─────────────────────────┘
- Text sind die eigentlichen Anweisungen der laufenden App (der in §1 ins RAM entfaltete Code)
- Data / BSS beherbergen die Variablen, die beim Start feststehen
- Heap ist der Bereich, in dem die App dem Betriebssystem zur Laufzeit „gib mir bitte noch ein bisschen mehr Speicher“ sagt. Das ist der Teil, der bei langlaufenden Apps gerne aufquillt (die Hauptkampfzone für Speicherlecks in §4)
- Stack ist der temporäre Notizblock, der bei jedem Funktionsaufruf benutzt wird; er räumt sich selbst auf, sobald die Funktion zurückkehrt
Merk dir nur „der Heap ist der Bereich, der mit der Zeit wächst“. Genau das zählt in §4.
2-3. Virtueller Speicher ─ jede App glaubt, einen eigenen Schreibtisch ganz für sich zu haben
Eine weitere Schicht solltest du kennen: Selbst wenn viele Prozesse gleichzeitig laufen, verhält sich jede App so, als gehöre der Schreibtisch ganz allein ihr. Der Mechanismus, der das möglich macht, ist virtueller Speicher (der vom Betriebssystem vorgespielte „private Schreibtisch“, den jede App sieht).
Die Adresse, die jede App sieht (virtuelle Adresse)
│
│ Speicherverwaltung des Betriebssystems (MMU + Seitentabelle)
▼
Die tatsächliche Stelle im physischen RAM (physische Adresse)
Das Betriebssystem führt eine Übersetzungstabelle (die Seitentabelle) und übersetzt „schreibe an Adresse 0x1000″ in eine echte physische RAM-Adresse. Die 0x1000 von App A und die 0x1000 von App B zeigen tatsächlich auf völlig verschiedene physische Orte.
Das ist elegant, hat aber als Nebenwirkung, dass das Betriebssystem eine enorme Menge an Seitentabellen-Daten und zugehöriger Buchführung im Speicher hält. Auch das ist Teil des „Zustands“, der sich im laufenden Betrieb im RAM ansammelt, und auch er fällt beim Neustart auf null zurück.
Wird das RAM knapp, schiebt das Betriebssystem ältere Daten auf die SSD aus. Das ist Swap (das vorübergehende Auslagern von Dokumenten, die nicht mehr auf den Schreibtisch passen, ins Bücherregal). Starkes Swappen lässt Apps plötzlich träge wirken, und ein Grund, warum sich ein Neustart „leichter anfühlt“, ist, dass auch die Swap-Bereiche zurückgesetzt werden.
3. [Kern] Was ein Neustart tatsächlich tut
Bisher haben wir festgehalten: „Betriebssystem und Apps stapeln viel Zustand im RAM auf“ und „den Strom zu kappen wischt das alles weg“. Was tut also die „Neustart“-Schaltfläche, die du so beiläufig drückst, im Hintergrund wirklich? Zerlegen wir es in 8 Phasen.
3-1. Die 8 Phasen eines Neustarts
Jede Phase dauert irgendwo zwischen ein paar hundert Millisekunden und einigen Dutzend Sekunden; in Summe ergibt das deine „Neustart-Wartezeit“.
- 1Signal an Apps zum BeendenDas Betriebssystem schickt laufenden Apps ein Signal „bitte aufhören“. Die Apps speichern ihren Zustand, leeren Caches und beenden sich sauber.
- 2Stopp von Diensten / TreibernHintergrunddienste und Gerätetreiber (kleine Apps, die zwischen Betriebssystem und Hardware übersetzen) fahren der Reihe nach herunter und geben ihre Ressourcen frei.
- 3FS-Sync → AusschaltenNoch im RAM gepufferte Schreibvorgänge werden auf die SSD geschrieben (Sync), danach wird der Rechner physisch ausgeschaltet. An dieser Stelle leert sich das RAM physisch.
- 4UEFI/BIOS-POSTSobald der Strom wieder da ist, läuft der Hardware-Selbsttest (POST). CPU, Speicher, SSD und Peripherie melden jeweils „ich bin da“.
- 5Bootloader-StartDas Boot-Programm am Anfang der SSD (Windows Boot Manager / GRUB / systemd-boot) wird geladen und entscheidet, welches Betriebssystem gestartet wird.
- 6Kernel-InitialisierungDer Kern des Betriebssystems (Kernel) wird ins RAM geladen und bringt Speicherverwaltung, Prozessverwaltung und Dateisystem nacheinander hoch.
- 7Dienste startenDas Betriebssystem startet die nötigen Dienste (Netzwerk, Audio, Druck usw.). Die Dirigenten sind Win = Services, Linux = systemd, macOS = launchd.
- 8Login → SitzungsstartDer Anmeldebildschirm erscheint; sobald du dich anmeldest, kommen Desktop und deine Apps zurück. Neustart abgeschlossen.
Merksatz: „signalisieren → stoppen → synchronisieren → selbst testen → Boot wählen → Kernel → Dienste → anmelden„. Vom Moment, in dem du den Neustart-Knopf drückst, bis dein Desktop zurückkehrt, durchläufst du immer diese 8 Schritte.
3-2. Sind „Herunterfahren und Einschalten“ und „Neustarten“ dasselbe?
Das ist die direkte Antwort auf die erste Frage aus §0. Unter Windows 10/11 sind sie nicht dasselbe.
Seit Windows 10 ist eine Funktion namens Schnellstart (Fast Startup) standardmäßig aktiviert. Wenn du „Herunterfahren“ wählst, reißt das Betriebssystem nicht wirklich alles ab, sondern macht Folgendes:
- Schließt deine Apps auf Benutzerebene (so weit deckt sich das mit einem „echten“ Herunterfahren)
- Sichert den Zustand von Kernel und Treibern in einer Datei auf der SSD (ähnlich dem Ruhezustand)
- Schaltet den Strom aus
Wenn du die Maschine das nächste Mal einschaltest, werden die schweren Teile (POST → Bootloader → Kernel-Init, Phasen 4–6) aus der SSD wiederhergestellt, statt von Null durchlaufen zu werden, wodurch der Start schneller wirkt.
Hier liegt aber der Haken: der im Kernel-Bereich angesammelte „Zustand“ wird beim nächsten Mal genauso unverändert wiederhergestellt. Wählst du dagegen „Neustart“, wird der Schnellstart umgangen, und du durchläufst die vollen 8 Phasen ─ der einzige Weg, wirklich von Null neu aufzubauen.
| Phase | Herunterfahren → Einschalten (Standard = Schnellstart aktiviert) | Neustart |
|---|---|---|
| 1. Signal an Apps zum Beenden | ✓ | ✓ |
| 2. Stopp von Diensten / Treibern | Teilweise (Kernel im Ruhezustand) | ✓ (vollständig) |
| 3. FS-Sync → Ausschalten | ✓ | ✓ |
| 4. UEFI/BIOS-POST | ✓ | ✓ |
| 5. Bootloader-Start | ✓ | ✓ |
| 6. Kernel-Initialisierung | ✗ (aus dem Ruhezustand wiederhergestellt) | ✓ |
| 7. Dienste starten | Teilweise (übersprungen, wo die Wiederherstellung greift) | ✓ (vollständig) |
| 8. Login → Sitzungsstart | ✓ | ✓ |
Als Faustregel gilt also:
- Geht es dir nur um einen schnelleren Start → Herunterfahren und wieder Einschalten ist in Ordnung
- Wenn „in letzter Zeit etwas seltsam läuft“ oder du ein Windows-Update sauber wirken lassen willst → immer „Neustart“ wählen
Eine kleine, aber stille wichtige Unterscheidung. macOS und Linux haben diese Lücke kaum ─ Herunterfahren → Einschalten und Neustart sind dort in etwa gleichwertig.
Wenn du deinen Arbeits- oder Schul-PC jeden Abend „herunterfährst“, aber morgens derselbe Fehler immer noch da ist, ist häufig der Schnellstart schuld. Du kannst ihn in den Windows-Energieoptionen abschalten, praktischer ist aber, einfach „Neustart“ zu wählen, wenn du wirklich einen sauberen Zustand brauchst, statt die Funktion global zu deaktivieren.
4. Speicherlecks ─ „der Schreibtischplatz, der nie zurückkommt“
In §2-2 hieß es „der Heap ist der Bereich, der mit der Zeit wächst“. Die Vereinbarung lautet: Eine App soll den Bereich an das Betriebssystem zurückgeben, sobald sie damit fertig ist. In der Praxis aber leihen sich manche Apps Speicher und geben ihn nie zurück. Das ist ein Speicherleck (ein Unfall, bei dem vergessene Rückgaben deinen nutzbaren Arbeitsbereich nach und nach schrumpfen lassen).
4-1. Was tatsächlich passiert
Speicher leihen und zurückgeben sieht grob so aus:
[leihen] [zurückgeben] App → „gib mir 100 MB" App → „brauche ich nicht mehr, hier hast du es" OS → „hier bitte" OS → „verstanden, recycle ich für jemand anderes"
Ein Leck entsteht, wenn die App vergisst, den Speicher genau dann zurückzugeben, wenn sie es sollte. Die Ursache ist fast immer ein Programmierfehler ─ eine herumliegende Referenz, ein nicht aufgerufener Shutdown-Handler. Selbst Lecks von nur ein paar hundert Bytes können in Stunden oder Tagen auf Gigabytes anschwellen, wenn sie in einer Schleife auftreten, die viele Male pro Sekunde läuft.
4-2. RAM, das mit der Zeit aufgefressen wird
Hier ein stilisiertes Bild der gesamten RAM-Nutzung, wenn eine App mit einem Leck 24 Stunden lang weiterläuft.
RAM-Nutzung
100% ┤ ████
│ ██████████
80% ┤ ██████████████
│ ██████████████████
60% ┤ ██████████████████████
│ ██████████████████████████
40% ┤ ██████████████████████████████
│ ██████████████████████████████████
20% ┤ ██████████████████████████████████████
│ ██████████████████████████████████████████████████
0% └─────────────────────────────────────────────────────────────────────→
0h 4h 8h 12h 16h 20h 24h
Eine App, die ganz problemlos gestartet ist, füllt das RAM im Lauf weniger Stunden still und leise auf. Wird das RAM knapp, weicht das Betriebssystem auf Swap (§2-3) aus und beginnt, Seiten auf die SSD zu verschieben ─ aber Swap-I/O ist rund 1000-mal langsamer als RAM, sodass die ganze Maschine träge wirkt.
Warum ein Neustart das behebt: Ein Neustart wischt das RAM sauber (Lecks inklusive), und jede App startet aus einem frischen Zustand, sodass die geleakte Summe schlagartig auf null zurückspringt.
4-3. Beim Smartphone gibt es dasselbe Problem
Anders als beim PC haben Smartphones kaum eine Gewohnheit, sie „herunterzufahren“ oder „neu zu starten“. Die meisten lassen sie wochen- oder monatelang am Stück nur im Standby laufen.
Aber auch mobile Apps lecken:
- Eine im Hintergrund laufende Social-App hortet still und leise Speicher
- Offen gelassene Browser-Tabs lassen den Heap weiter anwachsen
- Ein Spiel hält Bildspeicher fest, den es einmal angefordert und nie freigegeben hat
Das summiert sich. Wenn „mein Smartphone fühlt sich in letzter Zeit träge an“ oder „der Akku ist schneller leer als sonst“, dann hilft Aus- und wieder Einschalten aus demselben Grund wie beim PC ─ diese Ansammlung wird zurückgesetzt. Mobile Plattformen haben eine stärkere automatische Speicherverwaltung als PCs, können aber trotzdem nicht jeden App-spezifischen Bug abfangen.
„Wären mit mehr RAM nicht einfach keine Lecks da?“ Nein, das verschafft nur Zeit. Mit mehr RAM braucht das Leck länger, bis es auffällt, der Fehler ist aber weiter da, sodass am Ende doch ein Neustart nötig wird.
5. Erschöpfung der Ressourcen-Handles ─ Speicher ist nicht das Einzige, was endlich ist
„Ein Neustart behebt seltsame Dinge“ hat nicht nur mit Speicherlecks zu tun. Das Betriebssystem verwaltet neben dem Speicher noch viele weitere endliche Ressourcen, die unter demselben Problem „leihen und nie zurückgeben“ leiden. Zusammenfassend nennt man sie Ressourcen-Handles (nummerierte Tickets, die das Betriebssystem ausgibt, allesamt nur in endlicher Stückzahl).
5-1. Die wichtigsten Arten von Handles
Die Handles, die das Betriebssystem an Apps verteilt, lassen sich grob in die folgenden Kategorien einteilen. Alle haben eine Obergrenze, und sobald diese erreicht ist, ist keine neue Operation dieses Typs mehr möglich.
| Typ | Ticket wofür? | Typische Obergrenze | Beobachtungs-Befehl (Beispiel) |
|---|---|---|---|
| Dateideskriptor (FD) | Einer pro geöffneter Datei oder Pipe | 1.024 bis mehrere Millionen pro Prozess (abhängig von OS-Einstellungen) | Linux: ls /proc/$PID/fd | wc -l |
| Socket | Einer pro TCP/UDP-Verbindung | Zehntausende bis Hunderttausende systemweit | Linux: ss -s, Win: netstat -an |
| Sperre (Mutex / Semaphor) | Das „nicht anfassen“-Etikett, das jeweils nur eine Partei hält | Tausende bis Zehntausende pro Prozess oder System | lsof, fuser |
| GUI-Handle (Win) | Eines pro UI-Element (Fenster, Cursor, Symbol usw.) | standardmäßig 10.000 pro Prozess | Win: Get-Process | Sort-Object Handles -Desc |
5-2. Was „ich kann nichts mehr öffnen“ wirklich heißt
Wenn Handles lecken, sieht man meist Symptome wie:
- Fehler vom Typ „Datei kann nicht geöffnet werden“ / „Too many open files“
- Der Browser weigert sich, einen neuen Tab zu öffnen
- Netzwerkverbindungen scheitern allesamt (weil im Hintergrund alle Sockets verbraucht sind)
- Eine Meldung „Fenster kann nicht geöffnet werden“ unter Windows
Anders als bei Speicherlecks sieht die RAM-Nutzung dabei oft völlig normal aus, sodass Leute verwirrt sind: „der Speicher ist in Ordnung, warum ist alles kaputt?“ Andere Oberfläche, dasselbe zugrundeliegende Problem „vergessen zurückzugeben“ aus §4.
Warum ein Neustart das behebt: Wenn ein Prozess beendet wird, holt sich das Betriebssystem zwangsweise jedes Handle zurück, das dieser Prozess gehalten hat. Ein Neustart beendet jeden Prozess, sodass alle Handle-Zähler auf null springen und die endlichen Ressourcen des Betriebssystems vollständig freigegeben werden.
Die Folklore „Produktionsserver werden auf magische Weise stabil, wenn man sie alle paar Tage neu startet“ ist fast immer auf genau diese Art von Handle-Erschöpfung oder Speicherlecks zurückzuführen. Hat man die schuldige App gefunden, läuft alles auch ohne Neustarts; da das aber schwer aufzuspüren ist, schicken viele Teams schlicht einen „geplanten Neustart“-Cronjob los (ob man darauf stolz sein muss, ist eine andere Frage).
6. Updates und „Dateien in Benutzung“ ─ was „zum Anwenden bitte neu starten“ wirklich heißt
Jeder kennt „Windows-Update installiert. Bitte neu starten, um die Änderungen abzuschließen.“ Warum kann das Update nicht einfach von allein zu Ende gebracht werden? Es läuft auf eine Einschränkung in Bezug auf Dateien hinaus, die das Betriebssystem selbst gerade benutzt.
6-1. Dateisperren ─ man kann nichts austauschen, während es läuft
Das Betriebssystem hat einen Mechanismus namens Sperren (das Betriebssystem hängt einer Datei das Etikett „in Benutzung, nicht anfassen“ an). Der Grund ist einfach: Überschreibt jemand ein Dokument, während eine andere Partei mitten im Schreiben darauf ist, kommt es zu Datenkorruption.
Der Haken: Auch das Betriebssystem selbst (der Kernel) und die ausführbaren Dateien dauerhaft laufender Dienste sind die ganze Zeit, in der das System läuft, als „in Benutzung“ gesperrt.
[läuft]
Kernel-Datei auf der SSD ─── gesperrt (kein Überschreiben erlaubt)
│
▼
Ins RAM geladen ───────── die CPU führt gerade diese Anweisungen aus
↓ Auch wenn ein Update eine neue Kernel-Datei bringt…
Kernel-Datei auf der SSD ─── weiterhin gesperrt
Neue Kernel-Datei ─── daneben abgelegt, wartet
Man kann also eine neue Version ablegen, aber die laufende nicht austauschen. „Zum Abschließen der Änderung neu starten“ bedeutet:
- Den alten Kernel kurz anhalten (ausschalten)
- Beim nächsten Start lädt der Bootloader den neuen
Im Windows-Jargon geht es darum, per Neustart „einen Moment zu schaffen, in dem der Austausch erlaubt ist„.
6-2. Wie sich Windows / macOS / Linux unterscheiden
| Betriebssystem | Typische Fälle, die einen Neustart verlangen | Hinweise |
|---|---|---|
| Windows 10/11 | Monatliches Windows-Update, Treiber-Updates, .NET-Runtime-Updates | Der Status „Neustart ausstehend“ lässt sich leicht erkennen |
| macOS | „macOS-Update“ (groß / klein), Sicherheits-Updates | Der Update-Bildschirm setzt einen Neustart voraus |
| Linux | Kernel-Updates, Updates an Kernkomponenten wie glibc / systemd | needs-restarting (RHEL-Familie) / /var/run/reboot-required (Debian-Familie) markieren das |
Der Grund ist auf jedem Betriebssystem derselbe: ein laufendes Programm kann seine eigenen Dateien nicht im laufenden Betrieb überschreiben.
6-3. Die Ausnahme ─ Live-Patching (Updates ohne Neustart)
In den letzten Jahren gibt es zusätzlich Live-Patching (ein begrenzter Mechanismus, der einen laufenden Kernel still und leise umschreibt). Die wichtigsten Beispiele sind:
- Linux-Kernel:
kpatch(Red Hat) /livepatch(Canonical) /Ksplice(Oracle) - Windows Server: bestimmte Sicherheits-Fixes lassen sich als Hot-Patches einspielen
Allerdings lassen sie sich nicht auf beliebige Updates anwenden. Risikoreiche Änderungen (große Kernel-Umbauten, Änderungen an Datenstrukturen usw.) brauchen weiterhin einen echten Neustart. Einen Zauberspruch, der jedes Update ohne Neustart erledigt, gibt es bislang nicht.
Unser Begleitartikel Warum funktioniert Software nicht ohne Installation? erklärt, wie Software überhaupt ans Betriebssystem gebunden wird. Die bei der Installation platzierten ausführbaren Dateien sind genau die „Dinge, die gesperrt werden“, über die wir hier reden. Beide nebeneinander zu lesen, gibt dir einen dreidimensionalen Blick darauf, wie das Betriebssystem seine eigenen Dateien verwaltet.
7. Die heute existierende „neustartfreie“ Welt
Bisher lag der Fokus darauf, warum ein Neustart nötig ist. In der Cloud und im modernen Entwicklungs-Tooling gibt es jedoch immer mehr Situationen, in denen der Neustart geschickt vor dem Nutzer versteckt wird. Die naheliegende Frage ─ „Webdienste laufen rund um die Uhr, wann werden die denn überhaupt neu gestartet?“ ─ beantworten wir hier.
7-1. Fünf Ansätze, einen Neustart zu vermeiden oder zu verstecken
| Ansatz | Ausfallzeit | Umfang | Wo man ihn sieht | Beispiele |
|---|---|---|---|---|
| Vollständiger Neustart | Ja (zig Sekunden bis Minuten) | Das ganze Betriebssystem | Privat-PCs / Notfall-Wiederherstellung auf Servern | Normalbetrieb von Windows / macOS / Linux |
| Rollender Neustart | Keine (von außen) | Ein Server nach dem anderen über die Flotte hinweg | Webdienste rund um die Uhr | Kubernetes, AWS Auto Scaling |
| Container-Neuerstellung | Wenige Sekunden | Pro App | Cloud-App-Updates | Docker, Neuerstellung von Kubernetes-Pods |
| Hot Reload | Keine | Nur App-Code | Während der Entwicklung / einige Produktionsfälle | Webpack HMR, nodemon, Rails Dev Mode |
| Live-Patching | Keine | Teile des Kernels | Sicherheits-Fixes auf kritischen Servern | kpatch, Ksplice, livepatch |
7-2. Wie jedes davon funktioniert (mit Klartext-Erläuterungen)
- Rollender Neustart ─ denselben Dienst auf mehreren Servern betreiben und sie einen nach dem anderen neu starten. Der Nutzerverkehr wird auf die noch nicht neu gestarteten Maschinen umgeleitet, sodass der Dienst als Ganzes ununterbrochen weiterläuft. Der „immer verfügbar“-Ruf der Cloud beruht im Wesentlichen darauf.
- Container-Neuerstellung ─ einen ganzen Container (im Grunde ein „tragbares Zimmerchen“, in dem App und Abhängigkeiten eingeschlossen sind) von Grund auf neu bauen, um die App zu aktualisieren. Deutlich schneller als ein Neustart des gesamten Betriebssystems (wenige Sekunden) und meist mit rollenden Neustarts kombiniert.
- Hot Reload ─ die Technik, neuen Code oder neue Konfiguration einzuwechseln, ohne den Prozess zu stoppen. Das Erlebnis „Datei speichern und die Seite aktualisiert sich sofort“ während der Entwicklung ist genau das. Die Produktionsunterstützung schwankt stark nach Sprache und Framework.
- Live-Patching ─ die in §6-3 erwähnte Technik, einen Kernel im laufenden Betrieb umzuschreiben. Trifft nicht auf jedes Update zu, wird aber für begrenzte Fixes eingesetzt.
7-3. Fazit ─ „kein Neustart“ heißt immer noch, dass irgendwo jemand neu startet
Das Muster sollte jetzt klar sein: auch Welten, die so tun, als gäbe es „keinen Neustart“, verlassen sich darauf, dass irgendwo, irgendwann jemand neu startet. Cloud-Dienste starten ihre Flotten über rollende Neustarts der Reihe nach durch; Container werden ständig neu erstellt.
Und in die andere Richtung: auf einem privaten PC, auf dem du dieselbe Betriebssystem-Installation jahrelang weiterverwendest, sind periodische Neustarts auch heute unvermeidlich. Sieh den Neustart lieber nicht als Bösewicht ─ betrachte ihn als „Gelegenheit, den Zustand des Betriebssystems sauber zurückzusetzen“.
Wenn dich die Cloud-/Server-Seite interessiert, ergänzt unser Artikel Was ist eine IP-Adresse? diesen hier ─ rollende Neustarts hängen davon ab, dass Nutzerverkehr auf „eine von mehreren Maschinen“ geleitet wird, und genau darum geht es bei Loadbalancern und IP-Adressen.
8. Selbst beobachten ─ ein Blick auf Speicher und Neustart auf der eigenen Maschine
Jetzt, wo du die Theorie hast, wirf einen Blick auf deine eigene Maschine. Ein, zwei Befehle pro Betriebssystem verraten dir, wie viel RAM gerade in Benutzung ist und wann du zuletzt neu gestartet hast.
8-1. Speichernutzung prüfen
# Windows (PowerShell) ─ Top 5 Prozesse nach Speicher
Get-Process | Sort-Object WS -Descending | Select-Object -First 5 Name, @{n=\u0022RSS_MB\u0022;e={[math]::Round($_.WS/1MB,1)}}
# macOS ─ systemweite Speicherstatistik
vm_stat
# Linux ─ Speicher in menschenlesbarer Form
free -h
8-2. Startzeit prüfen (wann zuletzt neu gestartet)
Die Frage „wann habe ich eigentlich zuletzt neu gestartet?“:
# Windows (PowerShell) ─ Startzeit
(Get-CimInstance -ClassName Win32_OperatingSystem).LastBootUpTime
# macOS / Linux ─ wie lange schon in Betrieb
uptime
uptime gibt „aktuelle Zeit, Zeit seit dem Booten, angemeldete Benutzer und Lastdurchschnitte“ in einer einzigen Zeile aus. Auf einem Linux-Server kann ein uptime im Bereich mehrerer hundert Tage manchmal ein Warnsignal sein im Sinne von „wurden auch die Sicherheits-Updates eingespielt?“ (ein gesunder Betrieb bevorzugt oft periodische Neustarts).
8-3. Handle-Anzahlen prüfen (fortgeschritten)
Du bist neugierig auf die Handles aus §5? Du kannst die Live-Werte so prüfen:
# Linux ─ systemweit genutzte Dateideskriptoren cat /proc/sys/fs/file-nr # Windows (PowerShell) ─ Top 5 Prozesse nach Handle-Anzahl Get-Process | Sort-Object Handles -Descending | Select-Object -First 5 Name, Handles
Wenn die Werte stetig nach oben klettern, ohne jemals zurückzugehen, ist das ein starkes Lecksignal.
Zusammenfassung ─ vier Zeilen Essenz
Langer Artikel, aber die Essenz lässt sich in vier Zeilen fassen:
- Ein Neustart = das Neuaufbauen von flüchtigem Speicher und Betriebssystem-Zustand aus dem Nichts ─ das RAM leert sich physisch, sodass aller Zustand weg ist
- Einen Neustart braucht man aus drei Gründen ─ Lecks, Handle-Erschöpfung und Dateien in Benutzung ─ nichts davon klärt sich, solange ein Prozess am Leben ist
- „Herunterfahren und Einschalten“ ist unter Windows 10/11 nicht dasselbe wie „Neustarten“ ─ wähle „Neustart“, wenn du wirklich einen sauberen Zustand brauchst
- Die Cloud versteckt Neustarts geschickt hinter rollenden Neustarts und Containern ─ auf einem privaten PC bleibt der periodische Neustart eine gesunde Praxis
Sobald du dieses Schema verinnerlicht hast, wird „warum spinnt dieses Ding und warum behebt es ein Neustart?“ zur selben Brille für PCs, Smartphones und Server.
Für die Grundlagen auf der Netzwerk-Seite siehe Was ist eine IP-Adresse? und für den Handschlag auf der Software-Seite mit dem Betriebssystem Warum funktioniert Software nicht ohne Installation?. Kombiniert mit dem Blickwinkel „Zustand, den das Betriebssystem ansammelt“ aus diesem Artikel hast du einen halbwegs vollständigen Überblick darüber, was in deinem Rechner wirklich vor sich geht.
FAQ
F1. Wie unterscheiden sich Standby, Ruhezustand und Neustart?
A. Sie unterscheiden sich darin, wo der Zustand gesichert wird und ob du den „Neustart-Effekt“ bekommst. Standby hält das RAM unter Strom und pausiert nur CPU und Bildschirm ─ die Inhalte sind unversehrt, sodass du in Sekunden wieder da bist, aber nichts vom Betriebssystem-Zustand wird zurückgesetzt (der Fehler ist weiterhin da). Ruhezustand schreibt den RAM-Inhalt in eine Datei auf der SSD und schaltet den Strom aus; beim nächsten Start wird die Datei zurück ins RAM geladen, sodass der Zustand trotzdem zurückkommt (immer noch fehlerhaft). Herunterfahren und Einschalten sichert unter Windows 10/11 per Schnellstart den Kernel-Ruhezustand, was bedeutet, dass es kein wirklich sauberer Kaltstart ist (siehe §3-2). Nur Neustart umgeht den Schnellstart und durchläuft alle Phasen, leert das RAM physisch und setzt den gesamten Zustand zurück. Wenn dein Ziel ist, etwas Seltsames zu reparieren, wähle einfach „Neustart“.
F2. Wenn ich mehr RAM einbaue, kann ich mir Neustarts sparen?
A. Nein, das ist keine echte Lösung. Mehr RAM verschafft dir nur mehr Zeit, bis du ein Leck bemerkst ─ das Leck selbst hört nicht auf. Schlimmer noch: Das Leck kann lange unentdeckt bleiben, bis Swap-I/O still und leise deine Leistung auffrisst, und eines Tages kippt die Maschine einfach um. RAM-Reserve ist eine „Versicherung“, keine „Lösung“.
F3. Gibt es wirklich Server, die hunderte Tage nicht neu gestartet werden?
A. Halb wahr, halb etwas irreführend. Ja, es gibt einzelne Server mit einer uptime jenseits von 1.000 Tagen. Aber im modernen Cloud-Betrieb sind periodische bewusste Neustarts sogar empfohlen (um Sicherheits-Updates zuverlässig einzuspielen, latente Lecks und Handle-Erschöpfung zurückzusetzen, Konfigurationsabweichungen zu erkennen usw.). Das „immer verfügbar“-Gefühl eines Dienstes entsteht über den rollenden Neustart-Ansatz aus §7-1, bei dem einzelne Server regelmäßig neu starten, während der Dienst als Ganzes weiter Verkehr bedient. Mit anderen Worten: „die Anwendung geht nie offline“ und „die Betriebssystem-Instanz wird nie neu gestartet“ sind zwei verschiedene Dinge.
F4. Verschleißt häufiges Neustarten meine Maschine?
A. Für den normalen Gebrauch im Grunde nein. In der HDD-Ära gab es Bedenken wegen mechanischen Verschleißes, aber moderne SSDs schalten diese Sorge praktisch aus. Was du vermeiden solltest, ist den Einschaltknopf gedrückt zu halten, um einen harten Abbruch zu erzwingen ─ das überspringt das FS-Sync (Phase 3 aus §3-1) und riskiert Datenkorruption. Korrekt „Neustart“ zu wählen, ist auch täglich unbedenklich.
F5. Ich habe gehört, Macs müssen kaum neu gestartet werden ─ stimmt das?
A. Halb richtig. macOS hat lockerere Dateisperren, sodass App-Updates oft keinen Neustart brauchen, Kernel-Updates verlangen aber weiterhin einen, und seine aggressive Speicherverwaltung (komprimierter Speicher usw.) versteckt RAM-Druck besser, sodass man die „Notwendigkeit eines Neustarts“ weniger als unter Windows „bemerkt“. Trotzdem treten Speicherlecks und Handle-Erschöpfung auf jedem Betriebssystem auf, sodass „Macs müssen nie neu gestartet werden“ eine Überheblichkeit ist. Wenn sich etwas falsch anfühlt, starte einfach neu.

Schreibe einen Kommentar