tree: 033fd6c9b10505998e4df9dfc5a41e895fa1abfa [path history] [tgz]
  1. _toc.yaml
  2. bti_create.md
  3. bti_pin.md
  4. bti_release_quarantine.md
  5. cache_flush.md
  6. channel_call.md
  7. channel_call_etc.md
  8. channel_create.md
  9. channel_read.md
  10. channel_read_etc.md
  11. channel_write.md
  12. channel_write_etc.md
  13. clock_create.md
  14. clock_get_details.md
  15. clock_get_monotonic.md
  16. clock_read.md
  17. clock_update.md
  18. cprng_add_entropy.md
  19. cprng_draw.md
  20. deadline_after.md
  21. debug_read.md
  22. debug_send_command.md
  23. debug_write.md
  24. debuglog_create.md
  25. debuglog_read.md
  26. debuglog_write.md
  27. event_create.md
  28. eventpair_create.md
  29. exception_get_process.md
  30. exception_get_thread.md
  31. fifo_create.md
  32. fifo_read.md
  33. fifo_write.md
  34. framebuffer_get_info.md
  35. framebuffer_set_range.md
  36. futex_get_owner.md
  37. futex_requeue.md
  38. futex_requeue_single_owner.md
  39. futex_wait.md
  40. futex_wake.md
  41. futex_wake_handle_close_thread_exit.md
  42. futex_wake_single_owner.md
  43. guest_create.md
  44. guest_set_trap.md
  45. handle_close.md
  46. handle_close_many.md
  47. handle_duplicate.md
  48. handle_replace.md
  49. interrupt_ack.md
  50. interrupt_bind.md
  51. interrupt_bind_vcpu.md
  52. interrupt_create.md
  53. interrupt_destroy.md
  54. interrupt_trigger.md
  55. interrupt_wait.md
  56. iommu_create.md
  57. ioports_release.md
  58. ioports_request.md
  59. job_create.md
  60. job_set_critical.md
  61. job_set_policy.md
  62. ktrace_control.md
  63. ktrace_read.md
  64. ktrace_write.md
  65. msi_allocate.md
  66. msi_create.md
  67. mtrace_control.md
  68. nanosleep.md
  69. object_get_child.md
  70. object_get_info.md
  71. object_get_property.md
  72. object_set_profile.md
  73. object_set_property.md
  74. object_signal.md
  75. object_signal_peer.md
  76. object_wait_async.md
  77. object_wait_many.md
  78. object_wait_one.md
  79. pager_create.md
  80. pager_create_vmo.md
  81. pager_detach_vmo.md
  82. pager_op_range.md
  83. pager_query_dirty_ranges.md
  84. pager_query_vmo_stats.md
  85. pager_supply_pages.md
  86. pc_firmware_tables.md
  87. pci_add_subtract_io_range.md
  88. pci_cfg_pio_rw.md
  89. pci_config_read.md
  90. pci_config_write.md
  91. pci_enable_bus_master.md
  92. pci_get_bar.md
  93. pci_get_nth_device.md
  94. pci_init.md
  95. pci_map_interrupt.md
  96. pci_query_irq_mode.md
  97. pci_reset_device.md
  98. pci_set_irq_mode.md
  99. pmt_unpin.md
  100. port_cancel.md
  101. port_create.md
  102. port_queue.md
  103. port_wait.md
  104. process_create.md
  105. process_exit.md
  106. process_read_memory.md
  107. process_start.md
  108. process_write_memory.md
  109. profile_create.md
  110. README.md
  111. resource_create.md
  112. smc_call.md
  113. socket_create.md
  114. socket_read.md
  115. socket_set_disposition.md
  116. socket_write.md
  117. stream_create.md
  118. stream_readv.md
  119. stream_readv_at.md
  120. stream_seek.md
  121. stream_writev.md
  122. stream_writev_at.md
  123. syscall_test_0.md
  124. syscall_test_1.md
  125. syscall_test_2.md
  126. syscall_test_3.md
  127. syscall_test_4.md
  128. syscall_test_5.md
  129. syscall_test_6.md
  130. syscall_test_7.md
  131. syscall_test_8.md
  132. syscall_test_handle_create.md
  133. syscall_test_wrapper.md
  134. system_get_dcache_line_size.md
  135. system_get_event.md
  136. system_get_features.md
  137. system_get_num_cpus.md
  138. system_get_page_size.md
  139. system_get_performance_info.md
  140. system_get_physmem.md
  141. system_get_version_string.md
  142. system_mexec.md
  143. system_mexec_payload_get.md
  144. system_powerctl.md
  145. system_set_performance_info.md
  146. task_create_exception_channel.md
  147. task_kill.md
  148. task_suspend.md
  149. task_suspend_token.md
  150. thread_create.md
  151. thread_exit.md
  152. thread_legacy_yield.md
  153. thread_read_state.md
  154. thread_start.md
  155. thread_write_state.md
  156. ticks_get.md
  157. ticks_per_second.md
  158. timer_cancel.md
  159. timer_create.md
  160. timer_set.md
  161. vcpu_create.md
  162. vcpu_enter.md
  163. vcpu_interrupt.md
  164. vcpu_kick.md
  165. vcpu_read_state.md
  166. vcpu_write_state.md
  167. vmar_allocate.md
  168. vmar_destroy.md
  169. vmar_map.md
  170. vmar_op_range.md
  171. vmar_protect.md
  172. vmar_unmap.md
  173. vmar_unmap_handle_close_thread_exit.md
  174. vmo_create.md
  175. vmo_create_child.md
  176. vmo_create_contiguous.md
  177. vmo_create_physical.md
  178. vmo_get_size.md
  179. vmo_op_range.md
  180. vmo_read.md
  181. vmo_replace_as_executable.md
  182. vmo_set_cache_policy.md
  183. vmo_set_size.md
  184. vmo_write.md
docs/reference/syscalls/README.md

Zircon System Calls

Life of a Fuchsia syscall

Handles

Objects

Threads

Processes

Jobs

Tasks (Thread, Process, or Job)

Profiles

Exceptions

Channels

Sockets

Stream

Fifos

Events and Event Pairs

Ports

Futexes

Virtual Memory Objects (VMOs)

Virtual Memory Address Regions (VMARs)

Userspace Pagers

Cryptographically Secure RNG

Time

Timers

Hypervisor guests

Virtual CPUs

Global system information

Debug Logging

Multi-function

System

DDK

Display drivers

Tracing

Others/Work in progress

Syscall generation

Syscall support is generated from //zircon/vdso. The FIDL files in that directory are first run through fidlc, which produces an intermediate format. That intermediate format is consumed by kazoo, which produces output for both the kernel and userspace in a variety of languages. This output includes C or C++ headers for both the kernel and userspace, syscall entry points, other language bindings, and so on.

This tool is invoked as a part of the build, rather than checking in its output.