# Module std::os::unix

1.0.0 · source ·
Available on Unix only.
Expand description

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

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