tree: a19ce634f2bba9a35f0e55c6e632717ff5978e0a [path history] [tgz]
  1. atomic_bitflags/
  2. bootreason/
  3. composite_fd/
  4. crash_throttling/
  5. devicetree/
  6. ebpf/
  7. ebpf_api/
  8. ebpf_loader/
  9. estimate_timeline/
  10. expando/
  11. extended_pstate/
  12. features/
  13. filter_methods_macro/
  14. line_discipline/
  15. linux_uapi/
  16. magma/
  17. memory_pinning/
  18. page_buf/
  19. range_map/
  20. selinux/
  21. seq_lock/
  22. split_enum_storage/
  23. starnix_container/
  24. starnix_ext/
  25. starnix_lifecycle/
  26. starnix_logging/
  27. starnix_rcu/
  28. starnix_registers/
  29. starnix_stack/
  30. starnix_sync/
  31. starnix_syscalls/
  32. starnix_task_command/
  33. starnix_types/
  34. starnix_uapi/
  35. syncio/
  36. third_party/
  37. thread_create_vmars/
  38. usercopy/
  39. virtgralloc/
  40. BUILD.gn
  41. README.md
src/starnix/lib/README.md

Starnix Libraries

This directory contains libraries used by Starnix.

Dependency Rules

Code in this directory must not depend on //src/starnix/kernel/core (target starnix_core). This separation ensures that base libraries remain decoupled from the core kernel logic.

Placement Guide

If your code needs to depend on starnix_core, it belongs in one of the following locations:

  • //src/starnix/modules: If the code implements a distinct feature, file system, or optional module. This is the preferred location for most features.
  • //src/starnix/kernel: If the code is fundamental to the kernel's operation and tightly coupled with the core.

If your code is generic and not specific to Starnix at all, consider placing it in //src/lib.