Organisationsocaml-multicoreeio677862

Adds support for interacting with devices on macOS Block devices currently did not work on macOS, due to a bug that prevents poll(2) from working with block devices. This fixes that by creating a new thread that monitors block devices using select(2). The thread is created the first time a user computation attempts to read or write to a block devices. The implementation of the new select manager is in select.ml Additionally, the select manager also needed an eventfd system. The eventfd system from sched.ml was refactoring into a re-usable model that encapsulates some of the internal state in posix_eventfd.ml.

Jan 22 00:37 +00:00
3m53s
*Variants labelled (experimental) are still undergoing testing; if they have failed it may be a bug in OCaml-CI.