tree: e543086cee77df51bd235962468692aa256553c4
  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_c_file_buffer/
  25. starnix_container/
  26. starnix_crypto/
  27. starnix_ext/
  28. starnix_lifecycle/
  29. starnix_logging/
  30. starnix_rcu/
  31. starnix_registers/
  32. starnix_stack/
  33. starnix_sync/
  34. starnix_syscalls/
  35. starnix_task_command/
  36. starnix_types/
  37. starnix_uapi/
  38. syncio/
  39. third_party/
  40. thread_create_vmars/
  41. usercopy/
  42. virtgralloc/
  43. BUILD.gn
  44. 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.