Browse the docs

silk.platform.linux.start.

The program entry for a static, non-PIE Linux executable with no libc.

When to use#

Select this module as the runtime root of the artifact, with libc set to none and the loader entry _start. The application supplies pub fn main(inputs: &ProcessInputs) -> i32. Use silk.platform.native.start for a normal hosted program.

Details#

At start, the entry decodes the kernel stack with ProcessInputs.decode and calls main one time. The return value of main becomes the status of exit_group. If the process inputs are not valid, the process exits with status 127.

Gotchas#

  • There is no suspension storage and no report provider. main must be a synchronous function, not an effect.

  • A fatal trap does not run cleanup and does not print a report.

Public declarations: 0.

This module declares no public items.

Category: Native platform.

Profiles: aarch64-apple-darwin, aarch64-unknown-linux-gnu, aarch64-unknown-linux-gnu-no-libc, x86_64-unknown-linux-gnu, x86_64-unknown-linux-gnu-no-libc, wasm32-unknown-unknown, wasm32-wasip1, wasm32-wasip2.

View the source of this page