# 1.0.0[−][src]Module std::os::unix

This is supported on Unix only.

Platform-specific extensions to `std` for Unix platforms.

Provides access to platform-level information on Unix platforms, and exposes Unix-specific functions that would otherwise be inappropriate as part of the core `std` library.

It exposes more ways to deal with platform-specific strings (`OsStr`, `OsString`), allows to set permissions more granularly, extract low-level file descriptors from files and sockets, and has platform-specific helpers for spawning processes.

# Examples

    use std::fs::File;
    use std::os::unix::prelude::*;

    fn main() -> std::io::Result<()> {
        let f = File::create("foo.txt")?;
        let fd = f.as_raw_fd();

        // use fd with native unix bindings

        Ok(())
    }Run

## Modules

ffi | Unix Unix-specific extension to the primitives in the `std::ffi` module
fs | Unix Unix-specific extensions to primitives in the `std::fs` module.
io | Unix Unix-specific extensions to general I/O primitives
net | Unix Unix-specific networking functionality
prelude | Unix A prelude for conveniently writing platform-specific code.
process | Unix Unix-specific extensions to primitives in the `std::process` module.
raw | Deprecated Unix Unix-specific primitives available on all unix platforms
thread | Unix Unix-specific extensions to primitives in the `std::thread` module.