Os  |  API reference  |  Android Developers


public final class Os
extends Object



Access to low-level system functionality. Most of these are system calls. Most users will want to use higher-level APIs where available, but this class provides access to the underlying primitives used to implement the higher-level APIs.

The corresponding constants can be found in OsConstants.

Summary

Public methods

static FileDescriptor accept(FileDescriptor fd, InetSocketAddress peerAddress)

See accept(2).

static boolean access(String path, int mode)

See access(2).

static void bind(FileDescriptor fd, InetAddress address, int port)

See bind(2).

static void bind(FileDescriptor fd, SocketAddress address)

See bind(2).

static void chmod(String path, int mode)

See chmod(2).

static void chown(String path, int uid, int gid)

See chown(2).

static void close(FileDescriptor fd)

See close(2).

static void connect(FileDescriptor fd, InetAddress address, int port)

See connect(2).

static void connect(FileDescriptor fd, SocketAddress address)

See connect(2).

static StructDlInfo dladdr(long addr)

See dladdr(3)</>

static FileDescriptor dup(FileDescriptor oldFd)

See dup(2).

static FileDescriptor dup2(FileDescriptor oldFd, int newFd)

See dup2(2).

static String[] environ()

See environ(3).

static void execv(String filename, String[] argv)

See exec(3).

static void execve(String filename, String[] argv, String[] envp)

See execve(2).

static void fchmod(FileDescriptor fd, int mode)

See fchmod(2).

static void fchown(FileDescriptor fd, int uid, int gid)

See fchown(2).

static int fcntlInt(FileDescriptor fd, int cmd, int arg)

See fcntl(2).

static void fdatasync(FileDescriptor fd)

See fdatasync(2).

static StructStat fstat(FileDescriptor fd)

See fstat(2).

static StructStatVfs fstatvfs(FileDescriptor fd)

See fstatvfs(2).

static void fsync(FileDescriptor fd)

See fsync(2).

static void ftruncate(FileDescriptor fd, long length)

See ftruncate(2).

static String gai_strerror(int error)

See gai_strerror(3).

static int getegid()

See getegid(2).

static String getenv(String name)

See getenv(3).

static int geteuid()

See geteuid(2).

static int getgid()

See getgid(2).

static SocketAddress getpeername(FileDescriptor fd)

See getpeername(2).

static int getpid()

See getpid(2).

static int getppid()

See getppid(2).

static SocketAddress getsockname(FileDescriptor fd)

See getsockname(2).

static StructTimeval getsockoptTimeval(FileDescriptor fd, int level, int option)

See getsockopt(2).

static int gettid()

See gettid(2).

static int getuid()

See getuid(2).

static byte[] getxattr(String path, String name)

See getxattr(2)

static String if_indextoname(int index)

See if_indextoname(3).

static int if_nametoindex(String name)

See if_nametoindex(3).

static InetAddress inet_pton(int family, String address)

See inet_pton(3).

static boolean isatty(FileDescriptor fd)

See isatty(3).

static void kill(int pid, int signal)

See kill(2).

static void lchown(String path, int uid, int gid)

See lchown(2).

static void link(String oldPath, String newPath)

See link(2).

static void listen(FileDescriptor fd, int backlog)

See listen(2).

static String[] listxattr(String path)

See listxattr(2)

static long lseek(FileDescriptor fd, long offset, int whence)

See lseek(2).

static StructStat lstat(String path)

See lstat(2).

static FileDescriptor memfd_create(String name, int flags)

See memfd_create(2).

static void mincore(long address, long byteCount, byte[] vector)

See mincore(2).

static void mkdir(String path, int mode)

See mkdir(2).

static void mkfifo(String path, int mode)

See mkfifo(3).

static void mlock(long address, long byteCount)

See mlock(2).

static long mmap(long address, long byteCount, int prot, int flags, FileDescriptor fd, long offset)

See mmap(2).

static void msync(long address, long byteCount, int flags)

See msync(2).

static void munlock(long address, long byteCount)

See munlock(2).

static void munmap(long address, long byteCount)

See munmap(2).

static FileDescriptor open(String path, int flags, int mode)

See open(2).

static FileDescriptor[] pipe()

See pipe(2).

static int poll(StructPollfd[] fds, int timeoutMs)

See poll(2).

static void posix_fallocate(FileDescriptor fd, long offset, long length)

See posix_fallocate(3).

static int prctl(int option, long arg2, long arg3, long arg4, long arg5)

See prctl(2).

static int pread(FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount, long offset)

See pread(2).

static int pread(FileDescriptor fd, ByteBuffer buffer, long offset)

See pread(2).

static int pwrite(FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount, long offset)

See pwrite(2).

static int pwrite(FileDescriptor fd, ByteBuffer buffer, long offset)

See pwrite(2).

static int read(FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount)

See read(2).

static int read(FileDescriptor fd, ByteBuffer buffer)

See read(2).

static String readlink(String path)

See readlink(2).

static int readv(FileDescriptor fd, Object[] buffers, int[] offsets, int[] byteCounts)

See readv(2).

static int recvfrom(FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount, int flags, InetSocketAddress srcAddress)

See recvfrom(2).

static int recvfrom(FileDescriptor fd, ByteBuffer buffer, int flags, InetSocketAddress srcAddress)

See recvfrom(2).

static int recvmsg(FileDescriptor fd, StructMsghdr msg, int flags)

See recvmsg(2).

static void remove(String path)

See remove(3).

static void removexattr(String path, String name)

See removexattr(2).

static void rename(String oldPath, String newPath)

See rename(2).

static long sendfile(FileDescriptor outFd, FileDescriptor inFd, Int64Ref offset, long byteCount)

See sendfile(2).

static int sendmsg(FileDescriptor fd, StructMsghdr msg, int flags)

See sendmsg(2).

static int sendto(FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount, int flags, SocketAddress address)

See sendto(2).

static int sendto(FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount, int flags, InetAddress inetAddress, int port)

See sendto(2).

static int sendto(FileDescriptor fd, ByteBuffer buffer, int flags, InetAddress inetAddress, int port)

See sendto(2).

static void setegid(int egid)

This method was deprecated in API level 29. Android Applications do not have sufficient privileges to call this method.

static void setenv(String name, String value, boolean overwrite)

See setenv(3).

static void seteuid(int euid)

This method was deprecated in API level 29. Android Applications do not have sufficient privileges to call this method.

static void setgid(int gid)

This method was deprecated in API level 29. Android Applications do not have sufficient privileges to call this method.

static int setsid()

See setsid(2).

static void setsockoptInt(FileDescriptor fd, int level, int option, int value)

See setsockopt(2).

static void setsockoptTimeval(FileDescriptor fd, int level, int option, StructTimeval value)

See setsockopt(2).

static void setuid(int uid)

This method was deprecated in API level 29. Android Applications do not have sufficient privileges to call this method.

static void setxattr(String path, String name, byte[] value, int flags)

See setxattr(2)

static void shutdown(FileDescriptor fd, int how)

See shutdown(2).

static FileDescriptor socket(int domain, int type, int protocol)

See socket(2).

static void socketpair(int domain, int type, int protocol, FileDescriptor fd1, FileDescriptor fd2)

See socketpair(2).

static StructStat stat(String path)

See stat(2).

static StructStatVfs statvfs(String path)

See statvfs(2).

static String strerror(int errno)

See strerror(2).

static String strsignal(int signal)

See strsignal(3).

static void symlink(String oldPath, String newPath)

See symlink(2).

static long sysconf(int name)

See sysconf(3).

static void tcdrain(FileDescriptor fd)

See tcdrain(3).

static void tcsendbreak(FileDescriptor fd, int duration)

See tcsendbreak(3).

static int umask(int mask)

See umask(2).

static StructUtsname uname()

See uname(2).

static void unsetenv(String name)

See unsetenv(3).

static int write(FileDescriptor fd, byte[] bytes, int byteOffset, int byteCount)

See write(2).

static int write(FileDescriptor fd, ByteBuffer buffer)

See write(2).

static int writev(FileDescriptor fd, Object[] buffers, int[] offsets, int[] byteCounts)

See writev(2).

Inherited methods

From class java.lang.Object

Object clone()

Creates and returns a copy of this object.

boolean equals(Object obj)

Indicates whether some other object is "equal to" this one.

void finalize()

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

final Class<?> getClass()

Returns the runtime class of this Object.

int hashCode()

Returns a hash code value for the object.

final void notify()

Wakes up a single thread that is waiting on this object's monitor.

final void notifyAll()

Wakes up all threads that are waiting on this object's monitor.

String toString()

Returns a string representation of the object.

final void wait(long timeoutMillis, int nanos)

Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

final void wait(long timeoutMillis)

Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

final void wait()

Causes the current thread to wait until it is awakened, typically by being notified or interrupted.

Public methods

fcntlInt

public static int fcntlInt (FileDescriptor fd, 
                int cmd, 
                int arg)

See fcntl(2).

Parameters
fd FileDescriptor: This value cannot be null.
cmd int
arg int
Returns
int
Throws
ErrnoException

getegid

public static int getegid ()

See getegid(2).

Returns
int

geteuid

public static int geteuid ()

See geteuid(2).

Returns
int

getgid

public static int getgid ()

See getgid(2).

Returns
int

getpid

public static int getpid ()

See getpid(2).

Returns
int

getppid

public static int getppid ()

See getppid(2).

Returns
int

gettid

public static int gettid ()

See gettid(2).

Returns
int

getuid

public static int getuid ()

See getuid(2).

Returns
int

if_nametoindex

public static int if_nametoindex (String name)

See if_nametoindex(3).

Parameters
name String
Returns
int

isatty

public static boolean isatty (FileDescriptor fd)

See isatty(3).

Parameters
fd FileDescriptor
Returns
boolean

kill

public static void kill (int pid, 
                int signal)

See kill(2).

Parameters
pid int
signal int
Throws
ErrnoException

mincore

public static void mincore (long address, 
                long byteCount, 
                byte[] vector)

See mincore(2).

Parameters
address long
byteCount long
vector byte
Throws
ErrnoException

mlock

public static void mlock (long address, 
                long byteCount)

See mlock(2).

Parameters
address long
byteCount long
Throws
ErrnoException

mmap

public static long mmap (long address, 
                long byteCount, 
                int prot, 
                int flags, 
                FileDescriptor fd, 
                long offset)

See mmap(2).

Parameters
address long
byteCount long
prot int
flags int
fd FileDescriptor
offset long
Returns
long
Throws
ErrnoException

msync

public static void msync (long address, 
                long byteCount, 
                int flags)

See msync(2).

Parameters
address long
byteCount long
flags int
Throws
ErrnoException

munlock

public static void munlock (long address, 
                long byteCount)

See munlock(2).

Parameters
address long
byteCount long
Throws
ErrnoException

munmap

public static void munmap (long address, 
                long byteCount)

See munmap(2).

Parameters
address long
byteCount long
Throws
ErrnoException

poll

public static int poll (StructPollfd[] fds, 
                int timeoutMs)

See poll(2).

Note that in Lollipop this could throw an ErrnoException with EINTR. In later releases, the implementation will automatically just restart the system call with an appropriately reduced timeout.

Parameters
fds StructPollfd
timeoutMs int
Returns
int
Throws
ErrnoException

prctl

public static int prctl (int option, 
                long arg2, 
                long arg3, 
                long arg4, 
                long arg5)

See prctl(2).

Parameters
option int
arg2 long
arg3 long
arg4 long
arg5 long
Returns
int
Throws
ErrnoException

sendto

public static int sendto (FileDescriptor fd, 
                byte[] bytes, 
                int byteOffset, 
                int byteCount, 
                int flags, 
                SocketAddress address)

See sendto(2).

Parameters
fd FileDescriptor: This value cannot be null.
bytes byte: This value cannot be null.
byteOffset int
byteCount int
flags int
address SocketAddress: This value may be null.
Returns
int
Throws
ErrnoException
SocketException

sendto

public static int sendto (FileDescriptor fd, 
                byte[] bytes, 
                int byteOffset, 
                int byteCount, 
                int flags, 
                InetAddress inetAddress, 
                int port)

See sendto(2).

Parameters
fd FileDescriptor
bytes byte
byteOffset int
byteCount int
flags int
inetAddress InetAddress
port int
Returns
int
Throws
ErrnoException
SocketException

setegid

public static void setegid (int egid)

This method was deprecated in API level 29.
Android Applications do not have sufficient privileges to call this method.

See setegid(2).

Parameters
egid int
Throws
ErrnoException

seteuid

public static void seteuid (int euid)

This method was deprecated in API level 29.
Android Applications do not have sufficient privileges to call this method.

See seteuid(2).

Parameters
euid int
Throws
ErrnoException

setgid

public static void setgid (int gid)

This method was deprecated in API level 29.
Android Applications do not have sufficient privileges to call this method.

See setgid(2).

Parameters
gid int
Throws
ErrnoException

setuid

public static void setuid (int uid)

This method was deprecated in API level 29.
Android Applications do not have sufficient privileges to call this method.

See setuid(2).

Parameters
uid int
Throws
ErrnoException

sysconf

public static long sysconf (int name)

See sysconf(3).

Parameters
name int
Returns
long

umask

public static int umask (int mask)

See umask(2).

Parameters
mask int
Returns
int