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