2.components.h 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. /*
  2. * This file is only used for doxygen document generation.
  3. *
  4. * Components
  5. * - Device Virtual File System
  6. * - Device Driver
  7. * - Finsh Shell
  8. * - Application Module
  9. */
  10. /**
  11. * @defgroup group_kernel_components Components
  12. *
  13. * Components of RT-Thread, see @ref page_components for more details.
  14. */
  15. /**
  16. * @addtogroup group_kernel_components
  17. * @{
  18. */
  19. /**
  20. * @defgroup group_DFS Device Virtual File System
  21. *
  22. * @brief DFS is a virtual file system in RT-Thread RTOS.
  23. *
  24. * The DFS (Device Virtual File System) is a vfs file system of RT-Thread RTOS,
  25. * which is focused on embedded device. VFS is an abstraction layer on top of a
  26. * more concrete file system. The purpose of a VFS is to allow client applications
  27. * to access different types of concrete file systems in a uniform way.
  28. *
  29. * @image html dfs.png "Figure 4: Device Virtual File System Architecture"
  30. *
  31. * The DFS specifies an interface between the kernel and a concrete file system.
  32. * Therefore, it is easy to add support for new file system types to the kernel
  33. * simply by fulfilling the interface.
  34. */
  35. /**
  36. * @defgroup group_device_driver Device Driver
  37. * @brief device I/O subsystem
  38. *
  39. * The Device System is designed as simple and minimum layer to help communication between
  40. * applications and drivers.
  41. *
  42. * The Device System provide five interfaces to driver:
  43. * - open, open a device
  44. * - close, close a device
  45. * - read, read some data from a device
  46. * - write, write some data to a device
  47. * - control, send some control command to a device
  48. */
  49. /**
  50. * @defgroup group_finsh Finsh Shell
  51. *
  52. * @brief finsh shell is a user command shell in RT-Thread RTOS.
  53. *
  54. * finsh shell is a user command shell in RT-Thread RTOS, which is a shell can
  55. * accept C-expression like syntax in command. From finsh shell, user can access
  56. * system area, such as memory, variables and function by input C-expression in
  57. * command.
  58. *
  59. * @image html finsh.png "Figure 3: finsh shell architecture"
  60. * There is a shell thread, which named as "tshell", in the finsh shell, it read
  61. * user command from console device, and then invokes system function or access
  62. * system variable to output result (by rt_kprintf).
  63. */
  64. /**
  65. * @defgroup group_Module Application Module
  66. *
  67. * @brief Application Module is a feature let user to execute application in RT-Thread RTOS.
  68. *
  69. * Application Module is implemented as dynamic object loader, but it can handle
  70. * the dependences relationship between application and dynamic library, moreover,
  71. * it also can handle the kernel object destroy and memory release issue when application
  72. * (abnormally) exit.
  73. */
  74. /**@}*/