diff --git a/Doc/lib/libos.tex b/Doc/lib/libos.tex
index 7fc7fabe..73630e8 100644
--- a/Doc/lib/libos.tex
+++ b/Doc/lib/libos.tex
@@ -1808,3 +1808,11 @@
 n'} for \POSIX{} or \code{'\e r'} for Mac OS, or multiple characters,
 for example, \code{'\e r\e n'} for Windows.
 \end{datadesc}
+
+\begin{datadesc}{devnull}
+The file path of the null device.
+For example: \code{'/dev/null'} for \POSIX{} or \code{'Dev:Nul'} for the
+Macintosh.
+Also available via \module{os.path}.
+\versionadded{2.4}
+\end{datadesc}
diff --git a/Lib/macpath.py b/Lib/macpath.py
index 695fac9..1d3fa56 100644
--- a/Lib/macpath.py
+++ b/Lib/macpath.py
@@ -8,7 +8,7 @@
            "getatime","getctime", "islink","exists","isdir","isfile",
            "walk","expanduser","expandvars","normpath","abspath",
            "curdir","pardir","sep","pathsep","defpath","altsep","extsep",
-           "realpath","supports_unicode_filenames"]
+           "devnull","realpath","supports_unicode_filenames"]
 
 # strings representing various path-related bits and pieces
 curdir = ':'
@@ -18,6 +18,7 @@
 pathsep = '\n'
 defpath = ':'
 altsep = None
+devnull = 'Dev:Null'
 
 # Normalize the case of a pathname.  Dummy in Posix, but <s>.lower() here.
 
diff --git a/Lib/ntpath.py b/Lib/ntpath.py
index 687d885..549c35e 100644
--- a/Lib/ntpath.py
+++ b/Lib/ntpath.py
@@ -14,7 +14,7 @@
            "getatime","getctime", "islink","exists","isdir","isfile","ismount",
            "walk","expanduser","expandvars","normpath","abspath","splitunc",
            "curdir","pardir","sep","pathsep","defpath","altsep","extsep",
-           "realpath","supports_unicode_filenames"]
+           "devnull","realpath","supports_unicode_filenames"]
 
 # strings representing various path-related bits and pieces
 curdir = '.'
@@ -29,6 +29,7 @@
 elif 'os2' in sys.builtin_module_names:
     # OS/2 w/ VACPP
     altsep = '/'
+devnull = 'nul'
 
 # Normalize the case of a pathname and map slashes to backslashes.
 # Other normalizations (such as optimizing '../' away) are not done
diff --git a/Lib/os.py b/Lib/os.py
index c037ea9..5b79981 100644
--- a/Lib/os.py
+++ b/Lib/os.py
@@ -12,6 +12,7 @@
   - os.pathsep is the component separator used in $PATH etc
   - os.linesep is the line separator in text files ('\r' or '\n' or '\r\n')
   - os.defpath is the default search path for executables
+  - os.devnull is the file path of the null device ('/dev/null', etc.)
 
 Programs that import and use 'os' stand a better chance of being
 portable between different platforms.  Of course, they must then
@@ -28,7 +29,7 @@
 
 # Note:  more names are added to __all__ later.
 __all__ = ["altsep", "curdir", "pardir", "sep", "pathsep", "linesep",
-           "defpath", "name", "path"]
+           "defpath", "name", "path", "devnull"]
 
 def _get_exports_list(module):
     try:
@@ -129,7 +130,8 @@
     raise ImportError, 'no os specific module found'
 
 sys.modules['os.path'] = path
-from os.path import curdir, pardir, sep, pathsep, defpath, extsep, altsep
+from os.path import curdir, pardir, sep, pathsep, defpath, extsep, altsep, \
+    devnull
 
 del _names
 
diff --git a/Lib/os2emxpath.py b/Lib/os2emxpath.py
index 09982aa..9f8a1dd 100644
--- a/Lib/os2emxpath.py
+++ b/Lib/os2emxpath.py
@@ -13,7 +13,7 @@
            "getatime","getctime", "islink","exists","isdir","isfile","ismount",
            "walk","expanduser","expandvars","normpath","abspath","splitunc",
            "curdir","pardir","sep","pathsep","defpath","altsep","extsep",
-           "realpath","supports_unicode_filenames"]
+           "devnull","realpath","supports_unicode_filenames"]
 
 # strings representing various path-related bits and pieces
 curdir = '.'
@@ -23,6 +23,7 @@
 altsep = '\\'
 pathsep = ';'
 defpath = '.;C:\\bin'
+devnull = 'nul'
 
 # Normalize the case of a pathname and map slashes to backslashes.
 # Other normalizations (such as optimizing '../' away) are not done
diff --git a/Lib/posixpath.py b/Lib/posixpath.py
index dcd5a63..c117c89 100644
--- a/Lib/posixpath.py
+++ b/Lib/posixpath.py
@@ -19,7 +19,7 @@
            "walk","expanduser","expandvars","normpath","abspath",
            "samefile","sameopenfile","samestat",
            "curdir","pardir","sep","pathsep","defpath","altsep","extsep",
-           "realpath","supports_unicode_filenames"]
+           "devnull","realpath","supports_unicode_filenames"]
 
 # strings representing various path-related bits and pieces
 curdir = '.'
@@ -29,6 +29,7 @@
 pathsep = ':'
 defpath = ':/bin:/usr/bin'
 altsep = None
+devnull = '/dev/null'
 
 # Normalize the case of a pathname.  Trivial in Posix, string.lower on Mac.
 # On MS-DOS this may also turn slashes into backslashes; however, other
diff --git a/Lib/test/test_os.py b/Lib/test/test_os.py
index 4cdc29d..b05bffc 100644
--- a/Lib/test/test_os.py
+++ b/Lib/test/test_os.py
@@ -334,6 +334,14 @@
 
         os.removedirs(path)
 
+class DevNullTests (unittest.TestCase):
+    def test_devnull(self):
+        f = file(os.devnull, 'w')
+        f.write('hello')
+        f.close()
+        f = file(os.devnull, 'r')
+        assert f.read() == ''
+        f.close()
 
 def test_main():
     test_support.run_unittest(
@@ -342,6 +350,7 @@
         EnvironTests,
         WalkTests,
         MakedirTests,
+        DevNullTests,
     )
 
 if __name__ == "__main__":
diff --git a/Misc/NEWS b/Misc/NEWS
index a07d887..b7cf4b4 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -328,6 +328,8 @@
 Library
 -------
 
+- os.path.devnull has been added for all supported platforms.
+
 - Fixed #877165: distutils now picks the right C++ compiler command
   on cygwin and mingw32.
 
