GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Main page
  • Contents
  • Current events
  • Random article
  • About Wikipedia
  • Contact us
  • Help
  • Learn to edit
  • Community portal
  • Recent changes
  • Upload file
  • Special pages
  • Search
  • Donate

This view

  • Original page
  • New address

GeezerVison is showing en.wikipedia.org — /dev/zero - Wikipedia

Not to be confused with Null device.

/dev/zero is a special file in Unix-like operating systems that provides as many null characters (ASCII NUL, 0x00) as are read from it.[1] One of the typical uses is to provide a character stream for initializing data storage.[2]

Function

Read operations from /dev/zero return as many null characters (0x00) as requested in the read operation.

All write operations to /dev/zero succeed with no other effects. /dev/null is more commonly used for this purpose.

When /dev/zero is memory-mapped, e.g., with mmap, to the virtual address space, it is equivalent to using anonymous memory; i.e. memory not connected to any file.

History

/dev/zero was introduced in 1988 in SunOS-4.0 to allow a mappable BSS segment for shared libraries using anonymous memory.[3] HP-UX 8.x introduced the MAP_ANONYMOUS flag for mmap(), which maps anonymous memory directly without a need to open /dev/zero.[4] Since the late 1990s, MAP_ANONYMOUS[5] or MAP_ANON are supported by most UNIX versions, removing the original purpose of /dev/zero.[6]

Examples

icon
This section needs more citations. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (January 2026) (Learn how and when to remove this message)

Erasing a USB flash drive using DD:

dd if=/dev/zero of=/dev/<destination drive>

This may not perform a secure erasure and may not destroy any data, but may take significantly more time than required for this purpose.

Creating a 1 MiB file, named foobar, filled with null characters:

head -c $((1024 * 1024)) /dev/zero >foobar

See also

  • Unix philosophy
  • Standard streams
  • /dev
  • /dev/full

References

  1. ↑ Mitchell, Mark; Oldham, Jeffrey; Samuel, Alex (2001), "6.5.2 /dev/zero", Advanced Linux Programming, Sams Publishing, p. 136, ISBN 9780735710436
  2. ↑ Love, Robert (2007), "Mapping /dev/zero", Linux System Programming: Talking Directly to the Kernel and C Library, O'Reilly Media, Inc., pp. 259–260, ISBN 9780596009588
  3. ↑ ""C" run-time program bootstrap from SunOS, contributed to CSRG for inclusion in 4.4BSD". TUHS.
  4. ↑ "HP-UX 8.0.7 install media". 1992-07-22.
  5. ↑ Beal, Chris. "So what the heck is anonymous memory". Oracle Blog. Archived from the original on 2021-04-15. Retrieved 2019-09-09.
  6. ↑ "MAP_ANON description in mmap(2)". NetBSD. Archived from the original on 2019-11-25. Retrieved 2019-09-09.
Retrieved from "https://en.wikipedia.org/w/index.php?title=/dev/zero&oldid=1335881964"
Categories:
  • Unix file system technology
  • Device file
Hidden categories:
  • Articles with short description
  • Short description is different from Wikidata
  • Use dmy dates from February 2020
  • Articles needing additional references from January 2026
  • All articles needing additional references
  • All articles with unsourced statements
  • Articles with unsourced statements from January 2026
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.