/dev/zero: Unterschied zwischen den Versionen

Aus Foxwiki
Zeile 1: Zeile 1:
'''topic''' - Kurzbeschreibung
'''topic''' - Kurzbeschreibung
== Beschreibung ==
== Beschreibung ==
'''/dev/zero''' bezeichnet eine [[virtuelle Gerätedatei]] auf [[unixoides System|Unix-artigen]] [[Betriebssystem]]en, die beim Lesezugriff die angeforderte Anzahl an Null-Bytes ([[Nullzeichen]]) zurückliefert.
<code>[[devfs|/dev]]/zero</code> wurde mit [[SunOS]] 4.0 im Jahre 1987 gemeinsam mit dem neuen VM-Subsystem eingeführt. Es ist nicht Bestandteil des [[Portable Operating System Interface|POSIX]]-Standards.
== Details ==
Wenn auf <code>/dev/zero</code> geschrieben wird, verhält es sich wie das [[Nullgerät]] <code>[[/dev/null]]</code>. Bei einem mmap-[[Systemaufruf]] auf <code>/dev/zero</code> werden anonyme genullte Seiten aus dem virtuellen [[Speicherpool]] des [[Betriebssystemkernel]]s zur Verfügung gestellt. Viele Betriebssysteme verwenden diesen mmap-Mechanismus, um Programmen und [[Shared Library|Shared Libraries]] den sogenannten ''nicht-initialisierten Datenbereich'' zur Verfügung zu stellen. Viele Programme verwenden Datenbereiche, die durch einen mmap auf <code>/dev/zero</code> erzeugt wurden, als Basis für [[Shared Memory]], das zur Kommunikation zwischen mehreren [[Prozess (Informatik)|Prozessen]] verwendet wird.
== Verwendung ==
Im folgenden Beispiel erzeugt das [[Unix-Kommando]] <code>[[dd (Unix)|dd]]</code> die Datei <code>fdisk144.img</code>, die dem [[Speicherabbild]] einer 1,44-MB-[[Diskette]] (2.880&nbsp;[[Datenblock|Blöcke]] à 512&nbsp;Bytes) entspricht und nur [[Nullzeichen]] enthält:
<syntaxhighlight lang="sh">
dd if=/dev/zero of=fdisk144.img bs=512 count=2880
</syntaxhighlight>
Wenn das Abbild danach z.&nbsp;B. mit <code>newfs_msdos -F 12 fdisk144.img</code> (unter [[Berkeley Software Distribution|BSD-Unix]] wie z.&nbsp;B. [[FreeBSD]]; u.&nbsp;a. <code>mkfs.msdos</code> unter [[Linux]]) [[Formatierung#High-Level-Formatierung|formatiert]] wird, kann das dadurch erstellte ''{{lang|en|Disk Image}}'' von einem [[Emulator]] oder einer [[Virtuelle Maschine|Virtuellen Maschine]] (VM) als virtuelle Diskette mit [[File Allocation Table#FAT12|FAT12]]-Dateisystem verwendet werden.
== Installation ==
== Installation ==
== Anwendungen ==
== Anwendungen ==

Version vom 10. März 2023, 01:59 Uhr

topic - Kurzbeschreibung

Beschreibung

/dev/zero bezeichnet eine virtuelle Gerätedatei auf Unix-artigen Betriebssystemen, die beim Lesezugriff die angeforderte Anzahl an Null-Bytes (Nullzeichen) zurückliefert.

/dev/zero wurde mit SunOS 4.0 im Jahre 1987 gemeinsam mit dem neuen VM-Subsystem eingeführt. Es ist nicht Bestandteil des POSIX-Standards.

Details

Wenn auf /dev/zero geschrieben wird, verhält es sich wie das Nullgerät /dev/null. Bei einem mmap-Systemaufruf auf /dev/zero werden anonyme genullte Seiten aus dem virtuellen Speicherpool des Betriebssystemkernels zur Verfügung gestellt. Viele Betriebssysteme verwenden diesen mmap-Mechanismus, um Programmen und Shared Libraries den sogenannten nicht-initialisierten Datenbereich zur Verfügung zu stellen. Viele Programme verwenden Datenbereiche, die durch einen mmap auf /dev/zero erzeugt wurden, als Basis für Shared Memory, das zur Kommunikation zwischen mehreren Prozessen verwendet wird.

Verwendung

Im folgenden Beispiel erzeugt das Unix-Kommando dd die Datei fdisk144.img, die dem Speicherabbild einer 1,44-MB-Diskette (2.880 Blöcke à 512 Bytes) entspricht und nur Nullzeichen enthält:

dd if=/dev/zero of=fdisk144.img bs=512 count=2880

Wenn das Abbild danach z. B. mit newfs_msdos -F 12 fdisk144.img (unter BSD-Unix wie z. B. FreeBSD; u. a. mkfs.msdos unter Linux) formatiert wird, kann das dadurch erstellte Vorlage:Lang von einem Emulator oder einer Virtuellen Maschine (VM) als virtuelle Diskette mit FAT12-Dateisystem verwendet werden.

Installation

Anwendungen

Fehlerbehebung

Syntax

Optionen

Parameter

Umgebungsvariablen

Exit-Status

Konfiguration

Dateien

Sicherheit

Siehe auch

Dokumentation

RFC

Man-Pages

Info-Pages

Links

Einzelnachweise

Projekt

Weblinks

Testfragen

Testfrage 1

Antwort1

Testfrage 2

Antwort2

Testfrage 3

Antwort3

Testfrage 4

Antwort4

Testfrage 5

Antwort5