object

# `os`

Portable operating-system access predicates.

Author: Paulo Moura
Version: 1:61:1
Date: 2020-06-20
Compilation flags:
`static, context_switching_calls`
Implements:
`public` osp
Uses:
list
Aliases:
`osp` `absolute_file_name/2` as `expand_path/2`
Remarks:

> - File path expansion: To ensure portability, all file paths are expanded before being handed to the backend Prolog system.

> - B-Prolog portability: `pid/1` and `wall_time/1` predicates are not supported.

> - JIProlog portability: `file_permission/2` and `command_line_arguments/1` predicates are not supported.

> - Lean Prolog: `pid/1` predicate is not supported.

> - Qu-Prolog portability: `directory_files/2` predicate is not supported.

> - Quintus Prolog: `pid/1` and `shell/2` predicate are not supported.

> - Tau Prolog: `pid/1`, `directory_files/2`, and `file_permission/2` predicates are not supported.

> - XSB portability: `command_line_arguments/1` predicate is not supported.

Inherited public predicates:
absolute_file_name/2 change_directory/1 command_line_arguments/1 cpu_time/1 date_time/7 decompose_file_name/3 decompose_file_name/4 delete_directory/1 delete_file/1 directory_exists/1 directory_files/2 directory_files/3 ensure_directory/1 ensure_file/1 environment_variable/2 file_exists/1 file_modification_time/2 file_permission/2 file_size/2 make_directory/1 make_directory_path/1 null_device_path/1 operating_system_type/1 path_concat/3 pid/1 rename_file/2 shell/1 shell/2 sleep/1 temporary_directory/1 time_stamp/1 wall_time/1 working_directory/1

- Public predicates

- Protected predicates

- Private predicates

- Operators

## Public predicates

(no local declarations; see entity ancestors if any)

## Protected predicates

(no local declarations; see entity ancestors if any)

## Private predicates

(no local declarations; see entity ancestors if any)

## Operators

(none)

See also

os_types