1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-01-21 21:50:00 -05:00
denoland-deno/ext/os/README.md
Bartek Iwańczuk 974e2f44b2
refactor: add 'deno_os' crate (#27655)
This commit creates "deno_os" extension crate and moves
numerous ops from "runtime/" crate to the new crate.
2025-01-14 17:29:36 +01:00

34 lines
2.6 KiB
Markdown

# deno_os
This crate implements OS specific APIs for Deno
`loadavg`
| Target family | Syscall | Description |
| ------------- | ------------ | -------------------------------------------------------------------- |
| Linux | `sysinfo` | - |
| Windows | - | Returns `DEFAULT_LOADAVG`. There is no concept of loadavg on Windows |
| macOS, BSD | `getloadavg` | https://www.freebsd.org/cgi/man.cgi?query=getloadavg |
`os_release`
| Target family | Syscall | Description |
| ------------- | ---------------------------------------------------------------------------------------------------------- | ----------------------------------------------- |
| Linux | `/proc/sys/kernel/osrelease` | - |
| Windows | [`RtlGetVersion`](https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/wdm/nf-wdm-rtlgetversion) | dwMajorVersion . dwMinorVersion . dwBuildNumber |
| macOS | `sysctl([CTL_KERN, KERN_OSRELEASE])` | - |
`hostname`
| Target family | Syscall | Description |
| ------------- | ----------------------------------------- | ----------- |
| Unix | `gethostname(sysconf(_SC_HOST_NAME_MAX))` | - |
| Windows | `GetHostNameW` | - |
`mem_info`
| Target family | Syscall | Description |
| ------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ----------- |
| Linux | sysinfo and `/proc/meminfo` | - |
| Windows | `sysinfoapi::GlobalMemoryStatusEx` | - |
| macOS | <br> <pre> sysctl([CTL_HW, HW_MEMSIZE]); <br> sysctl([CTL_VM, VM_SWAPUSAGE]); <br> host_statistics64(mach_host_self(), HOST_VM_INFO64) </pre> | - |