# os::fs::inode - Rust
`Arc<Inode>` -> `OSInodeInner`: In order to open files concurrently we need to wrap `Inode` into `Arc`,but `Mutex` in `Inode` prevents file systems from being accessed simultaneously
Keywords: rust, rustlang, rust-lang, inode

# Module os::fs::inode

source · [−]
Expand description

`Arc<Inode>` -> `OSInodeInner`: In order to open files concurrently we need to wrap `Inode` into `Arc`,but `Mutex` in `Inode` prevents file systems from being accessed simultaneously

`UPSafeCell<OSInodeInner>` -> `OSInode`: for static `ROOT_INODE`,we need to wrap `OSInodeInner` into `UPSafeCell`

## Structs

OSInode

A wrapper around a filesystem inode to implement File trait atop

OSInodeInner

The OS inode inner in ‘UPSafeCell’

OpenFlags

Open file flags

ROOT_INODE

## Functions

list_apps

List all files in the filesystems

open_file

Open file with flags