Redox general-purpose test suite.
It contains tests to detect regressions, race conditions, kernel faults, incorrect kernel behavior, anything that internal Redox API exposed.
This test suite does not test relibc behavior or POSIX conformance, those should be in relibc tests.
Two primary way to run tests:
Clone this repository in Redox OS, then either run cargo test or cargo bench. Use this if you just want to see if the test passed or not, or get a consistent overall benchmark result.
If you are trying to run the test outside Redox OS, use redoxer to run the test inside an emulation.
Build this repository in Redox OS, or install using pkg install acid, then run acid [test-name].
acid avx2- TODOacid create_test- TODOacid channel- TODOacid page_fault- Not workingacid tcp_fin- TODOacid thread- TODOacid tls- TODOacid cross_scheme_link- TODOacid efault- TODOacid direction_flag_sc- TODOacid direction_flat_int- TODOacid pipe- TODOacid scheme_data_leak_proc- TODOacid scheme_data_leak_thread- TODOacid scheme_call- TODOacid relibc_leak- TODOacid clone_grant_using_fmap- TODOacid clone_grant_using_fmap_lazy- TODOacid anonymous_map_shared- TODOacid tlb- TODOacid file_mmap- TODOacid redoxfs_range_bookkeeping- TODOacid eintr- TODOacid syscall_bench- TODOacid filetable_leak- TODOacid pgrp_lifetime- TODOacid waitpid_transitive_queue- TODOacid waitpid_status_discard- TODOacid waitpid_esrch- TODOacid using_signal_hook- TODOacid wcontinued_sigcont_catching- TODOacid stop_orphan_pgrp- TODOacid orphan_exit_sighup- TODOacid orphan_exit_sighup_session- TODOacid wcontinued_sigcont_catching- TODOacid thread_reap- TODOacid waitpid_setpgid_echild- TODOacid setsid- TODOacid setpgid- TODOacid reparenting- TODOacid fork_tree_bench- TODOacid fork_serial_bench- TODOacid fork_exec_tree_bench- TODOacid fork_exec_serial_bench- TODOacid uds_dgram- Test the Unix Domain Socket datagram protocol.acid uds_stream- Test the Unix Domain Socket stream protocol.acid uds_dgram_msghdr- Test the sendmsg/recvmsg functionality over Unix Domain Sockets datagram protocol.acid uds_stream_msghdr- Test the sendmsg/recvmsg functionality over Unix Domain Sockets stream protocol.acid fdtbl- Test the bulk fd passing mechanism with the separated file tables.acid switch- Test to measure the context switch time in nanoseconds (ns).
P - Parent context switch count (500 by deafult)
C - Child context switch count (500 by deafult)
T - Timestamp counter difference
(The timestamp counter is not reliable on every system)