You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by st...@apache.org on 2016/02/23 01:59:50 UTC
[1/2] incubator-mynewt-site git commit: update structure of
documentation.
Repository: incubator-mynewt-site
Updated Branches:
refs/heads/master e2bd22eec -> 16008ec95
update structure of documentation.
Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/commit/dc31af3f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/tree/dc31af3f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/diff/dc31af3f
Branch: refs/heads/master
Commit: dc31af3ffb125ef23374e5349ebfbe349cc8c9c9
Parents: e2bd22e
Author: Sterling Hughes <st...@apache.org>
Authored: Sun Feb 21 21:38:30 2016 -0800
Committer: Sterling Hughes <st...@apache.org>
Committed: Sun Feb 21 21:38:30 2016 -0800
----------------------------------------------------------------------
docs/os/core_os/port_os.md | 2 +-
docs/os/get_started/introduction.md | 48 ++++
docs/os/get_started/newt_concepts.md | 48 ----
mkdocs.yml | 447 +++++++++++++++---------------
4 files changed, 277 insertions(+), 268 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/dc31af3f/docs/os/core_os/port_os.md
----------------------------------------------------------------------
diff --git a/docs/os/core_os/port_os.md b/docs/os/core_os/port_os.md
index 1331dde..32b8972 100644
--- a/docs/os/core_os/port_os.md
+++ b/docs/os/core_os/port_os.md
@@ -1,7 +1,7 @@
# Porting Mynewt OS
-This chapter describes how to adapt Newt OS to different processors. Adapting μC/OS-III to a microprocessor or a microcontroller is called porting.
+This chapter describes how to adapt Newt OS to different processors.
## Description
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/dc31af3f/docs/os/get_started/introduction.md
----------------------------------------------------------------------
diff --git a/docs/os/get_started/introduction.md b/docs/os/get_started/introduction.md
new file mode 100644
index 0000000..0231d49
--- /dev/null
+++ b/docs/os/get_started/introduction.md
@@ -0,0 +1,48 @@
+## Introduction
+
+This page introduces the basic terms you will need to find your way around the Mynewt ecosystem.
+
+### Basic components in the ecosystem
+
+* NewtOS is an open-source RTOS (Real Time Operating System) that works on a variety of hardware. The goal is to develop a pre-emptive, multitasking OS that is highly modular, making it possible to mix and match components to enable desired features and capabilities on multiple hardware architectures. Examples of components being worked on are the Core RTOS, a flash file system, utility functions, a variety of board support packages, packages of microcontrollers etc.
+
+
+* Network protocol stacks such as Bluetooth Low Energy, and more
+
+
+* Newt Tool helps you mix the specific packages for the combination of hardware and low-level embedded architecture features of the user's choice and generate the corresponding run-time image based on the NewtOS. It provides the infrastructure to manage and build for different CPU architectures, memory units, board support packages etc., allowing a user to formulate the contents according to the low-level features needed by his or her project.
+
+
+### Terminology
+
+A Mynewt user starts with a project in mind that defines the application or utility that he or she wants to implement on an embedded device. Making an LED blink on an electronics prototyping board is a common starter project. Enabling a BLE (Bluetooth Low Energy) peripheral mode on a development board is a more complex project. Specifying a project requires naming it, at the very least, and then adding the desired properties or attributes. In order to actualize a project, it needs to be applied to a target which is essentially a combination of some specified hardware and the execution environment.
+
+In the mynewt lifecycle, a project grows in a nest. A nest may house multiple projects. The nest is, therefore, a repository where various component packages for one or more projects reside. Each package is an egg (naturally!). However, in the world of Mynewt an egg may consist of other eggs! For example, the starter project Blinky is an egg consisting of several constituent eggs that enable core features. The egg form is suitable for elemental units of code as it explicitly exposes characteristics such as dependencies, versions, capabilities, requirements etc., thus making assembling appropriate components for a project and building an image for it easy to follow, modular, and robust.
+
+A nest can be given any name. For example, you will see a nest named "tadpole" in Mynewt ([https://git-wip-us.apache.org/repos/asf?p=incubator-mynewt-tadpole.git](https://git-wip-us.apache.org/repos/asf?p=incubator-mynewt-tadpole.git)). It contains all the core libraries of the operating system for the native platform which currently supports compilation on Mac OS X. The core libraries are contained in the form of eggs where an egg is a basic unit of implementation of any aspect of the RTOS. The eggs are distributed in the following directory structure inside the nest:
+
+* libs: contains the two eggs `os` and `testutil`
+* hw: contains three eggs - (i) `hal` which has the abstraction layer (HAL) API definitions that all BSP and MCU implementations must support, (ii) `/mcu/native` which in an MCU implementation for the native platform (a simulator, in this case), and (iii) `bsp/native` which is a BSP implementation for the native platform
+* compiler: contains the `sim` egg which bundles the compiler specifications for the native platform.
+
+Let's explore this sample nest a bit further. The `libs/os` egg contains code for scheduler, process/thread/memory management, semaphores etc. It is the core RTOS which ports to all supported chip platforms.The `libs/testutil` egg contains code for testing packages on hardware or simulated environment. The `hw/hal` egg contains header files that provide abstraction for physical hardware components such as GPIO (general purpose input/output), network adapters, timers, and UARTs. This `hw/hal` egg is an MCU peripheral abstraction designed to make it easy to port to different MCUs (microcontrollers). The `hw/mcu/native` egg contains code for microcontroller operations on the native platform. The `hw/bsp/native` egg contains the board support package for the native platform. And finally, the sixth egg `sim` contains the compiler specifications such as path and flags. Currently the compilation is supported on Mac OS X.
+
+You can see another nest in the mynewt ecosystem called the "larva". It was spawned from the skeletal "tadpole" nest using the newt tool. Spawning is easy - ` $ newt create nest <your_nest_name> `. "larva" is the developer's test repository containing all sorts of eggs being written and incubated, including ones to enhance the core operating system which should eventually make their way into the "tadpole" nest. There is a `hatch_tadpole` script to update the "tadpole" nest when the core OS related eggs in "larva" are ready.
+
+There is a third nest named "newt" that contains all the eggs needed to support the build and release process of mynewt software. In the future, there will also be pre-built nests for certain common hardware devices to enable a user to quickly get started with a project.
+
+
+### A Mynewt contributor
+
+A contributor can choose to work on any area(s) of the Mynewt endeavor that appeals to him or her. Hence, you can work on one or more eggs or an entire nest. You can create your own nest (master) or create a branch in an existing nest. For now, Runtime contributors will review any new areas of support that you may wish to introduce e.g. a new board support package (BSP) or a new network protocol.
+
+A contributer role necessarily implies he or she is a Mynewt user (see below) of some or all of the products developed.
+
+### A Mynewt user
+
+An application developer is interested only in using software available in this ecosystem to build a top level build artifact. He or she may either:
+
+* Use a pre-built nest, or
+* Spawn a new nest using the newt tool for a target where a target is a custom combination of supported hardware components
+
+In either case, the user would use the newt tool to create and set the target in the chosen nest. The newt tool would then be used to build out the target profile which would determine which eggs to choose. Finally, the user would use the newt tool to generate a run-time image that can be run on the device.
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/dc31af3f/docs/os/get_started/newt_concepts.md
----------------------------------------------------------------------
diff --git a/docs/os/get_started/newt_concepts.md b/docs/os/get_started/newt_concepts.md
deleted file mode 100644
index 6ac28da..0000000
--- a/docs/os/get_started/newt_concepts.md
+++ /dev/null
@@ -1,48 +0,0 @@
-## Newt Concepts
-
-This page introduces the basic terms you will need to find your way around the Mynewt ecosystem.
-
-### Basic components in the ecosystem
-
-* NewtOS is an open-source RTOS (Real Time Operating System) that works on a variety of hardware. The goal is to develop a pre-emptive, multitasking OS that is highly modular, making it possible to mix and match components to enable desired features and capabilities on multiple hardware architectures. Examples of components being worked on are the Core RTOS, a flash file system, utility functions, a variety of board support packages, packages of microcontrollers etc.
-
-
-* Network protocol stacks such as Bluetooth Low Energy, and more
-
-
-* Newt Tool helps you mix the specific packages for the combination of hardware and low-level embedded architecture features of the user's choice and generate the corresponding run-time image based on the NewtOS. It provides the infrastructure to manage and build for different CPU architectures, memory units, board support packages etc., allowing a user to formulate the contents according to the low-level features needed by his or her project.
-
-
-### Terminology
-
-A Mynewt user starts with a project in mind that defines the application or utility that he or she wants to implement on an embedded device. Making an LED blink on an electronics prototyping board is a common starter project. Enabling a BLE (Bluetooth Low Energy) peripheral mode on a development board is a more complex project. Specifying a project requires naming it, at the very least, and then adding the desired properties or attributes. In order to actualize a project, it needs to be applied to a target which is essentially a combination of some specified hardware and the execution environment.
-
-In the mynewt lifecycle, a project grows in a nest. A nest may house multiple projects. The nest is, therefore, a repository where various component packages for one or more projects reside. Each package is an egg (naturally!). However, in the world of Mynewt an egg may consist of other eggs! For example, the starter project Blinky is an egg consisting of several constituent eggs that enable core features. The egg form is suitable for elemental units of code as it explicitly exposes characteristics such as dependencies, versions, capabilities, requirements etc., thus making assembling appropriate components for a project and building an image for it easy to follow, modular, and robust.
-
-A nest can be given any name. For example, you will see a nest named "tadpole" in Mynewt ([https://git-wip-us.apache.org/repos/asf?p=incubator-mynewt-tadpole.git](https://git-wip-us.apache.org/repos/asf?p=incubator-mynewt-tadpole.git)). It contains all the core libraries of the operating system for the native platform which currently supports compilation on Mac OS X. The core libraries are contained in the form of eggs where an egg is a basic unit of implementation of any aspect of the RTOS. The eggs are distributed in the following directory structure inside the nest:
-
-* libs: contains the two eggs `os` and `testutil`
-* hw: contains three eggs - (i) `hal` which has the abstraction layer (HAL) API definitions that all BSP and MCU implementations must support, (ii) `/mcu/native` which in an MCU implementation for the native platform (a simulator, in this case), and (iii) `bsp/native` which is a BSP implementation for the native platform
-* compiler: contains the `sim` egg which bundles the compiler specifications for the native platform.
-
-Let's explore this sample nest a bit further. The `libs/os` egg contains code for scheduler, process/thread/memory management, semaphores etc. It is the core RTOS which ports to all supported chip platforms.The `libs/testutil` egg contains code for testing packages on hardware or simulated environment. The `hw/hal` egg contains header files that provide abstraction for physical hardware components such as GPIO (general purpose input/output), network adapters, timers, and UARTs. This `hw/hal` egg is an MCU peripheral abstraction designed to make it easy to port to different MCUs (microcontrollers). The `hw/mcu/native` egg contains code for microcontroller operations on the native platform. The `hw/bsp/native` egg contains the board support package for the native platform. And finally, the sixth egg `sim` contains the compiler specifications such as path and flags. Currently the compilation is supported on Mac OS X.
-
-You can see another nest in the mynewt ecosystem called the "larva". It was spawned from the skeletal "tadpole" nest using the newt tool. Spawning is easy - ` $ newt create nest <your_nest_name> `. "larva" is the developer's test repository containing all sorts of eggs being written and incubated, including ones to enhance the core operating system which should eventually make their way into the "tadpole" nest. There is a `hatch_tadpole` script to update the "tadpole" nest when the core OS related eggs in "larva" are ready.
-
-There is a third nest named "newt" that contains all the eggs needed to support the build and release process of mynewt software. In the future, there will also be pre-built nests for certain common hardware devices to enable a user to quickly get started with a project.
-
-
-### A Mynewt contributor
-
-A contributor can choose to work on any area(s) of the Mynewt endeavor that appeals to him or her. Hence, you can work on one or more eggs or an entire nest. You can create your own nest (master) or create a branch in an existing nest. For now, Runtime contributors will review any new areas of support that you may wish to introduce e.g. a new board support package (BSP) or a new network protocol.
-
-A contributer role necessarily implies he or she is a Mynewt user (see below) of some or all of the products developed.
-
-### A Mynewt user
-
-An application developer is interested only in using software available in this ecosystem to build a top level build artifact. He or she may either:
-
-* Use a pre-built nest, or
-* Spawn a new nest using the newt tool for a target where a target is a custom combination of supported hardware components
-
-In either case, the user would use the newt tool to create and set the target in the chosen nest. The newt tool would then be used to build out the target profile which would determine which eggs to choose. Finally, the user would use the newt tool to generate a run-time image that can be run on the device.
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/dc31af3f/mkdocs.yml
----------------------------------------------------------------------
diff --git a/mkdocs.yml b/mkdocs.yml
index f777d5c..e7336a2 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -9,238 +9,247 @@ pages:
- Download: 'download.md'
- Community: 'community.md'
- Events: 'events.md'
-- Manual for Mynewt OS:
+- Apache Mynewt Manual:
+ - Introduction: 'os/get_started/introduction.md'
- Get Started:
- - 'Introduction': 'os/get_started/newt_concepts.md'
- 'Blinky, The First Project': 'os/get_started/project1.md'
- 'Understanding Newt Terms': 'os/get_started/vocabulary.md'
- - 'How to edit docs': 'os/get_started/how_to_edit_docs.md'
- - 'Sample doc to edit': 'os/get_started/try_markdown.md'
- - More Projects:
- - 'Project 2': 'os/get_acclimated/project2.md'
- - 'Project 3': 'os/get_acclimated/project3.md'
- - Mynewt OS:
- - 'OS Fundamentals':
- - 'OS Fundamentals overview': 'os/core_os/mynewt_os.md'
- - 'os_idle_task': 'os/core_os/os_idle_task.md'
- - 'os_init': 'os/core_os/os_init.md'
- - 'os_init_idle_task': 'os/core_os/os_init_idle_task.md'
- - 'os_start': 'os/core_os/os_start.md'
- - 'os_started': 'os/core_os/os_started.md'
- - Scheduler/Context Switching:
- - 'context_switch overview': 'os/core_os/context_switch/context_switch.md'
- - 'os_sched': 'os/core_os/context_switch/os_sched.md'
- - 'os_sched_ctx_sw_hook': 'os/core_os/context_switch/os_sched_ctx_sw_hook.md'
- - 'os_sched_get_current_task': 'os/core_os/context_switch/os_sched_get_current_task.md'
- - 'os_sched_insert': 'os/core_os/context_switch/os_sched_insert.md'
- - 'os_sched_next_task': 'os/core_os/context_switch/os_sched_next_task.md'
- - 'os_sched_os_timer_exp': 'os/core_os/context_switch/os_sched_os_timer_exp.md'
- - 'os_sched_resort': 'os/core_os/context_switch/os_sched_resort.md'
- - 'os_sched_set_current_task': 'os/core_os/context_switch/os_sched_set_current_task.md'
- - 'os_sched_sleep': 'os/core_os/context_switch/os_sched_sleep.md'
- - 'os_sched_wakeup': 'os/core_os/context_switch/os_sched_wakeup.md'
- - 'Time':
- - 'time overview': 'os/core_os/time/time.md'
- - 'os_time_delay': 'os/core_os/time/os_time_delay.md'
- - 'os_time_get': 'os/core_os/time/os_time_get.md'
- - 'os_time_tick': 'os/core_os/time/os_time_tick.md'
- - 'Tasks':
- - 'task overview': 'os/core_os/task/task.md'
- - '_clear_stack': 'os/core_os/task/_clear_stack.md'
- - 'os_task_count': 'os/core_os/task/os_task_count.md'
- - 'os_task_info_get_next': 'os/core_os/task/os_task_info_get_next.md'
- - 'os_task_init': 'os/core_os/task/os_task_init.md'
- - 'os_task_next_id': 'os/core_os/task/os_task_next_id.md'
- - 'os_task_sanity_checkin': 'os/core_os/task/os_task_sanity_checkin.md'
- - 'Event Queues':
- - 'event_queue overview': 'os/core_os/event_queue/event_queue.md'
- - 'os_eventq_get': 'os/core_os/event_queue/os_eventq_get.md'
- - 'os_eventq_init': 'os/core_os/event_queue/os_eventq_init.md'
- - 'os_eventq_put': 'os/core_os/event_queue/os_eventq_put.md'
- - 'os_eventq_put2': 'os/core_os/event_queue/os_eventq_put2.md'
- - 'os_eventq_remove': 'os/core_os/event_queue/os_eventq_remove.md'
- - 'Semaphores':
- - 'semaphore overview': 'os/core_os/semaphore/semaphore.md'
- - 'os_sem_delete': 'os/core_os/semaphore/os_sem_delete.md'
- - 'os_sem_init': 'os/core_os/semaphore/os_sem_init.md'
- - 'os_sem_pend': 'os/core_os/semaphore/os_sem_pend.md'
- - 'os_sem_release': 'os/core_os/semaphore/os_sem_release.md'
- - 'Mutexes':
- - 'mutex overview': 'os/core_os/mutex/mutex.md'
- - 'os_mutex_delete': 'os/core_os/mutex/os_mutex_delete.md'
- - 'os_mutex_init': 'os/core_os/mutex/os_mutex_pend.md'
- - 'os_mutex_release': 'os/core_os/mutex/os_mutex_release.md'
- - 'Memory Pools':
- - 'mempool overview': 'os/core_os/memory_pool/memory_pool.md'
- - 'os_memblock_get': 'os/core_os/memory_pool/os_memblock_get.md'
- - 'os_mempool_init': 'os/core_os/memory_pool/os_mempool_init.md'
- - 'os_memblock_put': 'os/core_os/memory_pool/os_memblock_put.md'
- - 'OS_MEMPOOL_BYTES': 'os/core_os/memory_pool/OS_MEMPOOL_BYTES.md'
- - 'Heap':
- - 'heap overview': 'os/core_os/heap/heap.md'
- - 'os_free': 'os/core_os/heap/os_free.md'
- - 'os_malloc': 'os/core_os/heap/os_malloc.md'
- - 'os_realloc': 'os/core_os/heap/os_realloc.md'
- - 'Mbufs':
- - 'mbuf overview': 'os/core_os/mbuf/mbuf.md'
- - '_os_mbuf_copypkthdr': 'os/core_os/mbuf/_os_mbuf_copypkthdr.md'
- - '_os_msys_find_pool': 'os/core_os/mbuf/_os_msys_find_pool.md'
- - 'os_mbuf_adj': 'os/core_os/mbuf/os_mbuf_adj.md'
- - 'os_mbuf_append': 'os/core_os/mbuf/os_mbuf_append.md'
- - 'os_mbuf_concat': 'os/core_os/mbuf/os_mbuf_concat.md'
- - 'os_mbuf_copydata': 'os/core_os/mbuf/os_mbuf_copydata.md'
- - 'os_mbuf_copyinto': 'os/core_os/mbuf/os_mbuf_copyinto.md'
- - 'os_mbuf_dup': 'os/core_os/mbuf/os_mbuf_dup.md'
- - 'os_mbuf_extend': 'os/core_os/mbuf/os_mbuf_extend.md'
- - 'os_mbuf_free': 'os/core_os/mbuf/os_mbuf_free.md'
- - 'os_mbuf_free_chain': 'os/core_os/mbuf/os_mbuf_free_chain.md'
- - 'os_mbuf_get': 'os/core_os/mbuf/os_mbuf_get.md'
- - 'os_mbuf_get_pkthdr': 'os/core_os/mbuf/os_mbuf_get_pkthdr.md'
- - 'os_mbuf_memcmp': 'os/core_os/mbuf/os_mbuf_memcmp.md'
- - 'os_mbuf_off': 'os/core_os/mbuf/os_mbuf_off.md'
- - 'os_mbuf_pool_init': 'os/core_os/mbuf/os_mbuf_pool_init.md'
- - 'os_mbuf_prepend': 'os/core_os/mbuf/os_mbuf_prepend.md'
- - 'os_mbuf_pullup': 'os/core_os/mbuf/os_mbuf_pullup.md'
- - 'os_mqueue_get': 'os/core_os/mbuf/os_mqueue_get.md'
- - 'os_mqueue_init': 'os/core_os/mbuf/os_mqueue_init.md'
- - 'os_mqueue_put': 'os/core_os/mbuf/os_mqueue_put.md'
- - 'os_msys_get': 'os/core_os/mbuf/os_msys_get.md'
- - 'os_msys_get_pkthdr': 'os/core_os/mbuf/os_msys_get_pkthdr.md'
- - 'os_msys_register': 'os/core_os/mbuf/os_msys_register.md'
- - 'os_msys_reset': 'os/core_os/mbuf/os_msys_reset.md'
- - 'Sanity':
- - 'sanity overview': 'os/core_os/sanity/sanity.md'
- - 'os_sanity_check_init': 'os/core_os/sanity/os_sanity_check_init.md'
- - 'os_sanity_check_list_lock': 'os/core_os/sanity/os_sanity_check_list_lock.md'
- - 'os_sanity_check_list_unlock': 'os/core_os/sanity/os_sanity_check_list_unlock.md'
- - 'os_sanity_check_register': 'os/core_os/sanity/os_sanity_check_register.md'
- - 'os_sanity_check_reset': 'os/core_os/sanity/os_sanity_check_reset.md'
- - 'os_sanity_task_init': 'os/core_os/sanity/os_sanity_task_init.md'
- - 'os_sanity_task_loop': 'os/core_os/sanity/os_sanity_task_loop.md'
- - 'Callout Functions':
- - 'callout overview': 'os/core_os/callout/callout.md'
- - 'os_callout_func_init': 'os/core_os/callout/os_callout_func_init.md'
- - 'os_callout_init': 'os/core_os/callout/os_callout_init.md'
- - 'os_callout_queued': 'os/core_os/callout/os_callout_queued.md'
- - 'os_callout_reset': 'os/core_os/callout/os_callout_reset.md'
- - 'os_callout_stop': 'os/core_os/callout/os_callout_stop.md'
- - 'Porting to other Platforms': 'os/core_os/port_os.md'
- - Modules:
+ - Tutorials:
+ - 'Blinky on Real Hardware': 'os/get_acclimated/project2.md'
+ - 'Unit Testing a Package': 'os/get_acclimated/project3.md'
+ - Manual:
+ - OS Core:
+ - OS Fundamentals:
+ - Overview: 'os/core_os/mynewt_os.md'
+ - Functions:
+ - 'os_init': 'os/core_os/os_init.md'
+ - 'os_start': 'os/core_os/os_start.md'
+ - 'os_started': 'os/core_os/os_started.md'
+ - Scheduler:
+ - 'Overview': 'os/core_os/context_switch/context_switch.md'
+ - 'Functions':
+ - 'os_sched': 'os/core_os/context_switch/os_sched.md'
+ - 'os_sched_ctx_sw_hook': 'os/core_os/context_switch/os_sched_ctx_sw_hook.md'
+ - 'os_sched_get_current_task': 'os/core_os/context_switch/os_sched_get_current_task.md'
+ - 'os_sched_insert': 'os/core_os/context_switch/os_sched_insert.md'
+ - 'os_sched_next_task': 'os/core_os/context_switch/os_sched_next_task.md'
+ - 'os_sched_os_timer_exp': 'os/core_os/context_switch/os_sched_os_timer_exp.md'
+ - 'os_sched_resort': 'os/core_os/context_switch/os_sched_resort.md'
+ - 'os_sched_set_current_task': 'os/core_os/context_switch/os_sched_set_current_task.md'
+ - 'os_sched_sleep': 'os/core_os/context_switch/os_sched_sleep.md'
+ - 'os_sched_wakeup': 'os/core_os/context_switch/os_sched_wakeup.md'
+ - Time:
+ - 'Overview': 'os/core_os/time/time.md'
+ - 'Functions':
+ - 'os_time_delay': 'os/core_os/time/os_time_delay.md'
+ - 'os_time_get': 'os/core_os/time/os_time_get.md'
+ - 'os_time_tick': 'os/core_os/time/os_time_tick.md'
+ - Tasks:
+ - 'Overview': 'os/core_os/task/task.md'
+ - 'Functions':
+ - 'os_task_count': 'os/core_os/task/os_task_count.md'
+ - 'os_task_info_get_next': 'os/core_os/task/os_task_info_get_next.md'
+ - 'os_task_init': 'os/core_os/task/os_task_init.md'
+ - 'os_task_sanity_checkin': 'os/core_os/task/os_task_sanity_checkin.md'
+ - Event Queues:
+ - 'Overview': 'os/core_os/event_queue/event_queue.md'
+ - 'Functions':
+ - 'os_eventq_get': 'os/core_os/event_queue/os_eventq_get.md'
+ - 'os_eventq_init': 'os/core_os/event_queue/os_eventq_init.md'
+ - 'os_eventq_put': 'os/core_os/event_queue/os_eventq_put.md'
+ - 'os_eventq_put2': 'os/core_os/event_queue/os_eventq_put2.md'
+ - 'os_eventq_remove': 'os/core_os/event_queue/os_eventq_remove.md'
+ - Semaphores:
+ - 'Overview': 'os/core_os/semaphore/semaphore.md'
+ - 'Functions':
+ - 'os_sem_delete': 'os/core_os/semaphore/os_sem_delete.md'
+ - 'os_sem_init': 'os/core_os/semaphore/os_sem_init.md'
+ - 'os_sem_pend': 'os/core_os/semaphore/os_sem_pend.md'
+ - 'os_sem_release': 'os/core_os/semaphore/os_sem_release.md'
+ - Mutexes:
+ - 'Overview': 'os/core_os/mutex/mutex.md'
+ - 'Functions':
+ - 'os_mutex_delete': 'os/core_os/mutex/os_mutex_delete.md'
+ - 'os_mutex_init': 'os/core_os/mutex/os_mutex_pend.md'
+ - 'os_mutex_release': 'os/core_os/mutex/os_mutex_release.md'
+ - Memory Pools:
+ - 'Overview': 'os/core_os/memory_pool/memory_pool.md'
+ - 'Functions':
+ - 'os_memblock_get': 'os/core_os/memory_pool/os_memblock_get.md'
+ - 'os_mempool_init': 'os/core_os/memory_pool/os_mempool_init.md'
+ - 'os_memblock_put': 'os/core_os/memory_pool/os_memblock_put.md'
+ - 'OS_MEMPOOL_BYTES': 'os/core_os/memory_pool/OS_MEMPOOL_BYTES.md'
+ - Heap:
+ - 'Overview': 'os/core_os/heap/heap.md'
+ - 'Functions':
+ - 'os_free': 'os/core_os/heap/os_free.md'
+ - 'os_malloc': 'os/core_os/heap/os_malloc.md'
+ - 'os_realloc': 'os/core_os/heap/os_realloc.md'
+ - Mbufs:
+ - 'Overview': 'os/core_os/mbuf/mbuf.md'
+ - 'Functions':
+ - 'os_mbuf_adj': 'os/core_os/mbuf/os_mbuf_adj.md'
+ - 'os_mbuf_append': 'os/core_os/mbuf/os_mbuf_append.md'
+ - 'os_mbuf_concat': 'os/core_os/mbuf/os_mbuf_concat.md'
+ - 'os_mbuf_copydata': 'os/core_os/mbuf/os_mbuf_copydata.md'
+ - 'os_mbuf_copyinto': 'os/core_os/mbuf/os_mbuf_copyinto.md'
+ - 'os_mbuf_dup': 'os/core_os/mbuf/os_mbuf_dup.md'
+ - 'os_mbuf_extend': 'os/core_os/mbuf/os_mbuf_extend.md'
+ - 'os_mbuf_free': 'os/core_os/mbuf/os_mbuf_free.md'
+ - 'os_mbuf_free_chain': 'os/core_os/mbuf/os_mbuf_free_chain.md'
+ - 'os_mbuf_get': 'os/core_os/mbuf/os_mbuf_get.md'
+ - 'os_mbuf_get_pkthdr': 'os/core_os/mbuf/os_mbuf_get_pkthdr.md'
+ - 'os_mbuf_memcmp': 'os/core_os/mbuf/os_mbuf_memcmp.md'
+ - 'os_mbuf_off': 'os/core_os/mbuf/os_mbuf_off.md'
+ - 'os_mbuf_pool_init': 'os/core_os/mbuf/os_mbuf_pool_init.md'
+ - 'os_mbuf_prepend': 'os/core_os/mbuf/os_mbuf_prepend.md'
+ - 'os_mbuf_pullup': 'os/core_os/mbuf/os_mbuf_pullup.md'
+ - 'os_mqueue_get': 'os/core_os/mbuf/os_mqueue_get.md'
+ - 'os_mqueue_init': 'os/core_os/mbuf/os_mqueue_init.md'
+ - 'os_mqueue_put': 'os/core_os/mbuf/os_mqueue_put.md'
+ - 'os_msys_get': 'os/core_os/mbuf/os_msys_get.md'
+ - 'os_msys_get_pkthdr': 'os/core_os/mbuf/os_msys_get_pkthdr.md'
+ - 'os_msys_register': 'os/core_os/mbuf/os_msys_register.md'
+ - 'os_msys_reset': 'os/core_os/mbuf/os_msys_reset.md'
+ - Sanity:
+ - 'Overview': 'os/core_os/sanity/sanity.md'
+ - 'Functions':
+ - 'os_sanity_check_init': 'os/core_os/sanity/os_sanity_check_init.md'
+ - 'os_sanity_check_list_lock': 'os/core_os/sanity/os_sanity_check_list_lock.md'
+ - 'os_sanity_check_list_unlock': 'os/core_os/sanity/os_sanity_check_list_unlock.md'
+ - 'os_sanity_check_register': 'os/core_os/sanity/os_sanity_check_register.md'
+ - 'os_sanity_check_reset': 'os/core_os/sanity/os_sanity_check_reset.md'
+ - 'os_sanity_task_init': 'os/core_os/sanity/os_sanity_task_init.md'
+ - Callouts:
+ - 'Overview': 'os/core_os/callout/callout.md'
+ - 'Functions':
+ - 'os_callout_func_init': 'os/core_os/callout/os_callout_func_init.md'
+ - 'os_callout_init': 'os/core_os/callout/os_callout_init.md'
+ - 'os_callout_queued': 'os/core_os/callout/os_callout_queued.md'
+ - 'os_callout_reset': 'os/core_os/callout/os_callout_reset.md'
+ - 'os_callout_stop': 'os/core_os/callout/os_callout_stop.md'
+ - Porting to other Platforms: 'os/core_os/port_os.md'
- Console:
- - 'console overview': 'os/modules/console/console.md'
- - 'console_add_char': 'os/modules/console/console_add_char.md'
- - 'console_blocking_mode': 'os/modules/console/console_blocking_mode.md'
- - 'console_blocking_tx': 'os/modules/console/console_blocking_tx.md'
- - 'console_init': 'os/modules/console/console_init.md'
- - 'console_printf': 'os/modules/console/console_printf.md'
- - 'console_pull_char': 'os/modules/console/console_pull_char.md'
- - 'console_pull_char_head': 'os/modules/console/console_pull_char_head.md'
- - 'console_queue_char': 'os/modules/console/console_queue_char.md'
- - 'console_read': 'os/modules/console/console_read.md'
- - 'console_rx_char': 'os/modules/console/console_rx_char.md'
- - 'console_tx_char': 'os/modules/console/console_tx_char.md'
- - 'console_write': 'os/modules/console/console_write.md'
+ - 'Overview': 'os/modules/console/console.md'
+ - 'Functions':
+ - 'console_add_char': 'os/modules/console/console_add_char.md'
+ - 'console_blocking_mode': 'os/modules/console/console_blocking_mode.md'
+ - 'console_blocking_tx': 'os/modules/console/console_blocking_tx.md'
+ - 'console_init': 'os/modules/console/console_init.md'
+ - 'console_printf': 'os/modules/console/console_printf.md'
+ - 'console_pull_char': 'os/modules/console/console_pull_char.md'
+ - 'console_pull_char_head': 'os/modules/console/console_pull_char_head.md'
+ - 'console_queue_char': 'os/modules/console/console_queue_char.md'
+ - 'console_read': 'os/modules/console/console_read.md'
+ - 'console_rx_char': 'os/modules/console/console_rx_char.md'
+ - 'console_tx_char': 'os/modules/console/console_tx_char.md'
+ - 'console_write': 'os/modules/console/console_write.md'
- Shell:
- - 'shell overview': 'os/modules/shell/shell.md'
- - 'shell_cmd': 'os/modules/shell/shell_cmd.md'
- - 'shell_cmd_list_lock': 'os/modules/shell/shell_cmd_list_lock.md'
- - 'shell_cmd_list_unlock': 'os/modules/shell/shell_cmd_list_unlock.md'
- - 'shell_cmd_register': 'os/modules/shell/shell_cmd_register.md'
- - 'shell_console_rx_cb': 'os/modules/shell/shell_console_rx_cb.md'
- - 'shell_echo_cmd': 'os/modules/shell/shell_echo_cmd.md'
- - 'shell_help_cmd': 'os/modules/shell/shell_help_cmd.md'
- - 'shell_nlip_input_register': 'os/modules/shell/shell_nlip_input_register.md'
- - 'shell_nlip_mqueue_process': 'os/modules/shell/shell_nlip_mqueue_process.md'
- - 'shell_nlip_mtx': 'os/modules/shell/shell_nlip_mtx.md'
- - 'shell_nlip_output': 'os/modules/shell/shell_nlip_output.md'
- - 'shell_nlip_process': 'os/modules/shell/shell_nlip_process.md'
- - 'shell_os_mpool_display_cmd': 'os/modules/shell/shell_os_mpool_display_cmd.md'
- - 'shell_os_tasks_display_cmd': 'os/modules/shell/shell_os_tasks_display_cmd.md'
- - 'shell_process_command': 'os/modules/shell/shell_process_command.md'
- - 'shell_read_console': 'os/modules/shell/shell_read_console.md'
- - 'shell_task_func': 'os/modules/shell/shell_task_func.md'
- - 'shell_task_init': 'os/modules/shell/shell_task_init.md'
+ - 'Overview': 'os/modules/shell/shell.md'
+ - 'Functions':
+ - 'shell_cmd': 'os/modules/shell/shell_cmd.md'
+ - 'shell_cmd_list_lock': 'os/modules/shell/shell_cmd_list_lock.md'
+ - 'shell_cmd_list_unlock': 'os/modules/shell/shell_cmd_list_unlock.md'
+ - 'shell_cmd_register': 'os/modules/shell/shell_cmd_register.md'
+ - 'shell_console_rx_cb': 'os/modules/shell/shell_console_rx_cb.md'
+ - 'shell_echo_cmd': 'os/modules/shell/shell_echo_cmd.md'
+ - 'shell_help_cmd': 'os/modules/shell/shell_help_cmd.md'
+ - 'shell_nlip_input_register': 'os/modules/shell/shell_nlip_input_register.md'
+ - 'shell_nlip_mqueue_process': 'os/modules/shell/shell_nlip_mqueue_process.md'
+ - 'shell_nlip_mtx': 'os/modules/shell/shell_nlip_mtx.md'
+ - 'shell_nlip_output': 'os/modules/shell/shell_nlip_output.md'
+ - 'shell_nlip_process': 'os/modules/shell/shell_nlip_process.md'
+ - 'shell_os_mpool_display_cmd': 'os/modules/shell/shell_os_mpool_display_cmd.md'
+ - 'shell_os_tasks_display_cmd': 'os/modules/shell/shell_os_tasks_display_cmd.md'
+ - 'shell_process_command': 'os/modules/shell/shell_process_command.md'
+ - 'shell_read_console': 'os/modules/shell/shell_read_console.md'
+ - 'shell_task_func': 'os/modules/shell/shell_task_func.md'
+ - 'shell_task_init': 'os/modules/shell/shell_task_init.md'
- Bootloader:
- - 'bootloader overview': 'os/modules/bootloader/bootloader.md'
- - 'boot_build_status': 'os/modules/bootloader/boot_build_status.md'
- - 'boot_build_status_one': 'os/modules/bootloader/boot_build_status_one.md'
- - 'boot_clear_status': 'os/modules/bootloader/boot_clear_status.md'
- - 'boot_copy_area': 'os/modules/bootloader/boot_copy_area.md'
- - 'boot_copy_image': 'os/modules/bootloader/boot_copy_image.md'
- - 'boot_erase_area': 'os/modules/bootloader/boot_erase_area.md'
- - 'boot_fill_slot': 'os/modules/bootloader/boot_fill_slot.md'
- - 'boot_find_image_area_idx': 'os/modules/bootloader/boot_find_image_area_idx.md'
- - 'boot_find_image_part': 'os/modules/bootloader/boot_find_image_part.md'
- - 'boot_find_image_slot': 'os/modules/bootloader/boot_find_image_slot.md'
- - 'boot_go': 'os/modules/bootloader/boot_go.md'
- - 'boot_init_flash': 'os/modules/bootloader/boot_init_flash.md'
- - 'boot_move_area': 'os/modules/bootloader/boot_move_area.md'
- - 'boot_read_image_header': 'os/modules/bootloader/boot_read_image_header.md'
- - 'boot_read_image_headers': 'os/modules/bootloader/boot_read_image_headers.md'
- - 'boot_read_status': 'os/modules/bootloader/boot_read_status.md'
- - 'boot_select_image_slot': 'os/modules/bootloader/boot_select_image_slot.md'
- - 'boot_slot_addr': 'os/modules/bootloader/boot_slot_addr.md'
- - 'boot_slot_to_area_idx': 'os/modules/bootloader/boot_slot_to_area_idx.md'
- - 'boot_swap_areas': 'os/modules/bootloader/boot_swap_areas.md'
- - 'boot_vect_delete_main': 'os/modules/bootloader/boot_vect_delete_main.md'
- - 'boot_vect_delete_test': 'os/modules/bootloader/boot_vect_delete_test.md'
- - 'boot_vect_read_main': 'os/modules/bootloader/boot_vect_read_main.md'
- - 'boot_vect_read_one': 'os/modules/bootloader/boot_vect_read_one.md'
- - 'boot_vect_read_test': 'os/modules/bootloader/boot_vect_read_test.md'
- - 'boot_write_status': 'os/modules/bootloader/boot_write_status.md'
+ - 'Overview': 'os/modules/bootloader/bootloader.md'
+ - 'Functions':
+ - 'boot_build_status': 'os/modules/bootloader/boot_build_status.md'
+ - 'boot_build_status_one': 'os/modules/bootloader/boot_build_status_one.md'
+ - 'boot_clear_status': 'os/modules/bootloader/boot_clear_status.md'
+ - 'boot_copy_area': 'os/modules/bootloader/boot_copy_area.md'
+ - 'boot_copy_image': 'os/modules/bootloader/boot_copy_image.md'
+ - 'boot_erase_area': 'os/modules/bootloader/boot_erase_area.md'
+ - 'boot_fill_slot': 'os/modules/bootloader/boot_fill_slot.md'
+ - 'boot_find_image_area_idx': 'os/modules/bootloader/boot_find_image_area_idx.md'
+ - 'boot_find_image_part': 'os/modules/bootloader/boot_find_image_part.md'
+ - 'boot_find_image_slot': 'os/modules/bootloader/boot_find_image_slot.md'
+ - 'boot_go': 'os/modules/bootloader/boot_go.md'
+ - 'boot_init_flash': 'os/modules/bootloader/boot_init_flash.md'
+ - 'boot_move_area': 'os/modules/bootloader/boot_move_area.md'
+ - 'boot_read_image_header': 'os/modules/bootloader/boot_read_image_header.md'
+ - 'boot_read_image_headers': 'os/modules/bootloader/boot_read_image_headers.md'
+ - 'boot_read_status': 'os/modules/bootloader/boot_read_status.md'
+ - 'boot_select_image_slot': 'os/modules/bootloader/boot_select_image_slot.md'
+ - 'boot_slot_addr': 'os/modules/bootloader/boot_slot_addr.md'
+ - 'boot_slot_to_area_idx': 'os/modules/bootloader/boot_slot_to_area_idx.md'
+ - 'boot_swap_areas': 'os/modules/bootloader/boot_swap_areas.md'
+ - 'boot_vect_delete_main': 'os/modules/bootloader/boot_vect_delete_main.md'
+ - 'boot_vect_delete_test': 'os/modules/bootloader/boot_vect_delete_test.md'
+ - 'boot_vect_read_main': 'os/modules/bootloader/boot_vect_read_main.md'
+ - 'boot_vect_read_one': 'os/modules/bootloader/boot_vect_read_one.md'
+ - 'boot_vect_read_test': 'os/modules/bootloader/boot_vect_read_test.md'
+ - 'boot_write_status': 'os/modules/bootloader/boot_write_status.md'
- 'File System Abstraction': 'os/modules/filesystem.md'
- 'Newtron Flash File System': 'os/modules/nffs.md'
- Test Utilities:
- - 'testutil overview': 'os/modules/testutil/testutil.md'
- - 'tu_case_abort': 'os/modules/testutil/tu_case_abort.md'
- - 'tu_case_append_assert_msg': 'os/modules/testutil/tu_case_append_assert_msg.md'
- - 'tu_case_append_buf': 'os/modules/testutil/tu_case_append_buf.md'
- - 'tu_case_append_file_info': 'os/modules/testutil/tu_case_append_file_info.md'
- - 'tu_case_append_manual_pass_msg': 'os/modules/testutil/tu_case_append_manual_pass_msg.md'
- - 'tu_case_complete': 'os/modules/testutil/tu_case_complete.md'
- - 'tu_case_fail_assert': 'os/modules/testutil/tu_case_fail_assert.md'
- - 'tu_case_init': 'os/modules/testutil/tu_case_init.md'
- - 'tu_case_pass_manual': 'os/modules/testutil/tu_case_pass_manual.md'
- - 'tu_case_set_name': 'os/modules/testutil/tu_case_set_name.md'
- - 'tu_case_vappend_buf': 'os/modules/testutil/tu_case_vappend_buf.md'
- - 'tu_case_write_fail_buf': 'os/modules/testutil/tu_case_write_fail_buf.md'
- - 'tu_case_write_pass_auto': 'os/modules/testutil/tu_case_write_pass_auto.md'
- - 'tu_case_write_pass_buf': 'os/modules/testutil/tu_case_write_pass_buf.md'
- - 'tu_init': 'os/modules/testutil/tu_init.md'
- - 'tu_restart': 'os/modules/testutil/tu_restart.md'
- - 'tu_suite_init': 'os/modules/testutil/tu_suite_init.md'
- - 'tu_suite_set_name': 'os/modules/testutil/tu_suite_set_name.md'
+ - 'Overview': 'os/modules/testutil/testutil.md'
+ - 'Functions':
+ - 'tu_case_abort': 'os/modules/testutil/tu_case_abort.md'
+ - 'tu_case_append_assert_msg': 'os/modules/testutil/tu_case_append_assert_msg.md'
+ - 'tu_case_append_buf': 'os/modules/testutil/tu_case_append_buf.md'
+ - 'tu_case_append_file_info': 'os/modules/testutil/tu_case_append_file_info.md'
+ - 'tu_case_append_manual_pass_msg': 'os/modules/testutil/tu_case_append_manual_pass_msg.md'
+ - 'tu_case_complete': 'os/modules/testutil/tu_case_complete.md'
+ - 'tu_case_fail_assert': 'os/modules/testutil/tu_case_fail_assert.md'
+ - 'tu_case_init': 'os/modules/testutil/tu_case_init.md'
+ - 'tu_case_pass_manual': 'os/modules/testutil/tu_case_pass_manual.md'
+ - 'tu_case_set_name': 'os/modules/testutil/tu_case_set_name.md'
+ - 'tu_case_vappend_buf': 'os/modules/testutil/tu_case_vappend_buf.md'
+ - 'tu_case_write_fail_buf': 'os/modules/testutil/tu_case_write_fail_buf.md'
+ - 'tu_case_write_pass_auto': 'os/modules/testutil/tu_case_write_pass_auto.md'
+ - 'tu_case_write_pass_buf': 'os/modules/testutil/tu_case_write_pass_buf.md'
+ - 'tu_init': 'os/modules/testutil/tu_init.md'
+ - 'tu_restart': 'os/modules/testutil/tu_restart.md'
+ - 'tu_suite_init': 'os/modules/testutil/tu_suite_init.md'
+ - 'tu_suite_set_name': 'os/modules/testutil/tu_suite_set_name.md'
- Image Manager:
- - 'imgmgr overview': 'os/modules/imgmgr/imgmgr.md'
- - 'imgmgr_module_init': 'os/modules/imgmgr/imgmgr_module_init.md'
- - 'imgr_boot_read': 'os/modules/imgmgr/imgr_boot_read.md'
- - 'imgr_boot_write': 'os/modules/imgmgr/imgr_boot_write.md'
- - 'imgr_file_download': 'os/modules/imgmgr/imgr_file_download.md'
- - 'imgr_file_upload': 'os/modules/imgmgr/imgr_file_upload.md'
- - 'imgr_list': 'os/modules/imgmgr/imgr_list.md'
- - 'imgr_noop': 'os/modules/imgmgr/imgr_noop.md'
- - 'imgr_read_file': 'os/modules/imgmgr/imgr_read_file.md'
- - 'imgr_read_main': 'os/modules/imgmgr/imgr_read_main.md'
- - 'imgr_read_test': 'os/modules/imgmgr/imgr_read_test.md'
- - 'imgr_read_ver': 'os/modules/imgmgr/imgr_read_ver.md'
- - 'imgr_upload': 'os/modules/imgmgr/imgr_upload.md'
- - 'imgr_ver_jsonstr': 'os/modules/imgmgr/imgr_ver_jsonstr.md'
- - 'imgr_ver_parse': 'os/modules/imgmgr/imgr_ver_parse.md'
- - 'imgr_ver_str': 'os/modules/imgmgr/imgr_ver_str.md'
- - 'imgr_write_file': 'os/modules/imgmgr/imgr_write_file.md'
+ - 'Overview': 'os/modules/imgmgr/imgmgr.md'
+ - 'Functions':
+ - 'imgmgr_module_init': 'os/modules/imgmgr/imgmgr_module_init.md'
+ - 'imgr_boot_read': 'os/modules/imgmgr/imgr_boot_read.md'
+ - 'imgr_boot_write': 'os/modules/imgmgr/imgr_boot_write.md'
+ - 'imgr_file_download': 'os/modules/imgmgr/imgr_file_download.md'
+ - 'imgr_file_upload': 'os/modules/imgmgr/imgr_file_upload.md'
+ - 'imgr_list': 'os/modules/imgmgr/imgr_list.md'
+ - 'imgr_noop': 'os/modules/imgmgr/imgr_noop.md'
+ - 'imgr_read_file': 'os/modules/imgmgr/imgr_read_file.md'
+ - 'imgr_read_main': 'os/modules/imgmgr/imgr_read_main.md'
+ - 'imgr_read_test': 'os/modules/imgmgr/imgr_read_test.md'
+ - 'imgr_read_ver': 'os/modules/imgmgr/imgr_read_ver.md'
+ - 'imgr_upload': 'os/modules/imgmgr/imgr_upload.md'
+ - 'imgr_ver_jsonstr': 'os/modules/imgmgr/imgr_ver_jsonstr.md'
+ - 'imgr_ver_parse': 'os/modules/imgmgr/imgr_ver_parse.md'
+ - 'imgr_ver_str': 'os/modules/imgmgr/imgr_ver_str.md'
+ - 'imgr_write_file': 'os/modules/imgmgr/imgr_write_file.md'
- 'Baselibc library': 'os/modules/baselibc.md'
- 'Embedded Lua': 'os/modules/elua.md'
- JSON:
- - 'JSON overview': 'os/modules/json/json.md'
- - 'json_encode_object_entry': 'os/modules/json/json_encode_object_entry.md'
- - 'json_encode_object_finish': 'os/modules/json/json_encode_object_finish.md'
- - 'json_encode_object_key': 'os/modules/json/json_encode_object_key.md'
- - 'json_encode_object_start': 'os/modules/json/json_encode_object_start.md'
- - 'json_encode_value': 'os/modules/json/json_encode_value.md'
- - 'json_internal_read_object': 'os/modules/json/json_internal_read_object.md'
- - 'json_read_array': 'os/modules/json/json_read_array.md'
- - 'json_read_object': 'os/modules/json/json_read_object.md'
- - 'json_target_address': 'os/modules/json/json_target_address.md'
+ - 'Overview': 'os/modules/json/json.md'
+ - 'Functions':
+ - 'json_encode_object_entry': 'os/modules/json/json_encode_object_entry.md'
+ - 'json_encode_object_finish': 'os/modules/json/json_encode_object_finish.md'
+ - 'json_encode_object_key': 'os/modules/json/json_encode_object_key.md'
+ - 'json_encode_object_start': 'os/modules/json/json_encode_object_start.md'
+ - 'json_encode_value': 'os/modules/json/json_encode_value.md'
+ - 'json_internal_read_object': 'os/modules/json/json_internal_read_object.md'
+ - 'json_read_array': 'os/modules/json/json_read_array.md'
+ - 'json_read_object': 'os/modules/json/json_read_object.md'
+ - 'json_target_address': 'os/modules/json/json_target_address.md'
- Manual for Newt Tool:
- Newt Tool:
- 'Command structure': 'newt/newt_ops.md'
[2/2] incubator-mynewt-site git commit: begin making a few changes to
intro
Posted by st...@apache.org.
begin making a few changes to intro
Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/commit/16008ec9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/tree/16008ec9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/diff/16008ec9
Branch: refs/heads/master
Commit: 16008ec95eaa92a97aafc3d630502d9fe31f9492
Parents: dc31af3
Author: Sterling Hughes <st...@apache.org>
Authored: Mon Feb 22 16:58:13 2016 -0800
Committer: Sterling Hughes <st...@apache.org>
Committed: Mon Feb 22 16:58:13 2016 -0800
----------------------------------------------------------------------
docs/os/get_started/introduction.md | 129 +++++++++++++++++++++++--------
1 file changed, 97 insertions(+), 32 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-site/blob/16008ec9/docs/os/get_started/introduction.md
----------------------------------------------------------------------
diff --git a/docs/os/get_started/introduction.md b/docs/os/get_started/introduction.md
index 0231d49..a0e133c 100644
--- a/docs/os/get_started/introduction.md
+++ b/docs/os/get_started/introduction.md
@@ -1,48 +1,113 @@
## Introduction
-This page introduces the basic terms you will need to find your way around the Mynewt ecosystem.
-
-### Basic components in the ecosystem
-
-* NewtOS is an open-source RTOS (Real Time Operating System) that works on a variety of hardware. The goal is to develop a pre-emptive, multitasking OS that is highly modular, making it possible to mix and match components to enable desired features and capabilities on multiple hardware architectures. Examples of components being worked on are the Core RTOS, a flash file system, utility functions, a variety of board support packages, packages of microcontrollers etc.
-
-
-* Network protocol stacks such as Bluetooth Low Energy, and more
+### What is Apache Mynewt?
+Apache Mynewt is an Operating System for Microcontrollers (MCUs.)
-* Newt Tool helps you mix the specific packages for the combination of hardware and low-level embedded architecture features of the user's choice and generate the corresponding run-time image based on the NewtOS. It provides the infrastructure to manage and build for different CPU architectures, memory units, board support packages etc., allowing a user to formulate the contents according to the low-level features needed by his or her project.
+Apache Mynewt is very well suited for developing constrained IoT
+devices. Typical use cases for Apache Mynewt include:
+* Lights
+* Locks
+* Wearables
-### Terminology
-
-A Mynewt user starts with a project in mind that defines the application or utility that he or she wants to implement on an embedded device. Making an LED blink on an electronics prototyping board is a common starter project. Enabling a BLE (Bluetooth Low Energy) peripheral mode on a development board is a more complex project. Specifying a project requires naming it, at the very least, and then adding the desired properties or attributes. In order to actualize a project, it needs to be applied to a target which is essentially a combination of some specified hardware and the execution environment.
-In the mynewt lifecycle, a project grows in a nest. A nest may house multiple projects. The nest is, therefore, a repository where various component packages for one or more projects reside. Each package is an egg (naturally!). However, in the world of Mynewt an egg may consist of other eggs! For example, the starter project Blinky is an egg consisting of several constituent eggs that enable core features. The egg form is suitable for elemental units of code as it explicitly exposes characteristics such as dependencies, versions, capabilities, requirements etc., thus making assembling appropriate components for a project and building an image for it easy to follow, modular, and robust.
-
-A nest can be given any name. For example, you will see a nest named "tadpole" in Mynewt ([https://git-wip-us.apache.org/repos/asf?p=incubator-mynewt-tadpole.git](https://git-wip-us.apache.org/repos/asf?p=incubator-mynewt-tadpole.git)). It contains all the core libraries of the operating system for the native platform which currently supports compilation on Mac OS X. The core libraries are contained in the form of eggs where an egg is a basic unit of implementation of any aspect of the RTOS. The eggs are distributed in the following directory structure inside the nest:
-
-* libs: contains the two eggs `os` and `testutil`
-* hw: contains three eggs - (i) `hal` which has the abstraction layer (HAL) API definitions that all BSP and MCU implementations must support, (ii) `/mcu/native` which in an MCU implementation for the native platform (a simulator, in this case), and (iii) `bsp/native` which is a BSP implementation for the native platform
-* compiler: contains the `sim` egg which bundles the compiler specifications for the native platform.
-
-Let's explore this sample nest a bit further. The `libs/os` egg contains code for scheduler, process/thread/memory management, semaphores etc. It is the core RTOS which ports to all supported chip platforms.The `libs/testutil` egg contains code for testing packages on hardware or simulated environment. The `hw/hal` egg contains header files that provide abstraction for physical hardware components such as GPIO (general purpose input/output), network adapters, timers, and UARTs. This `hw/hal` egg is an MCU peripheral abstraction designed to make it easy to port to different MCUs (microcontrollers). The `hw/mcu/native` egg contains code for microcontroller operations on the native platform. The `hw/bsp/native` egg contains the board support package for the native platform. And finally, the sixth egg `sim` contains the compiler specifications such as path and flags. Currently the compilation is supported on Mac OS X.
-
-You can see another nest in the mynewt ecosystem called the "larva". It was spawned from the skeletal "tadpole" nest using the newt tool. Spawning is easy - ` $ newt create nest <your_nest_name> `. "larva" is the developer's test repository containing all sorts of eggs being written and incubated, including ones to enhance the core operating system which should eventually make their way into the "tadpole" nest. There is a `hatch_tadpole` script to update the "tadpole" nest when the core OS related eggs in "larva" are ready.
+### Basic components in the ecosystem
-There is a third nest named "newt" that contains all the eggs needed to support the build and release process of mynewt software. In the future, there will also be pre-built nests for certain common hardware devices to enable a user to quickly get started with a project.
+* NewtOS is an open-source RTOS (Real Time Operating System) that
+works on a variety of hardware. The goal is to develop a pre-emptive,
+multitasking OS that is highly modular, making it possible to mix
+and match components to enable desired features and capabilities
+on multiple hardware architectures. Examples of components being
+worked on are the Core RTOS, a flash file system, utility functions,
+a variety of board support packages, packages of microcontrollers
+etc.
-### A Mynewt contributor
+* Network protocol stacks such as Bluetooth Low Energy, and more
-A contributor can choose to work on any area(s) of the Mynewt endeavor that appeals to him or her. Hence, you can work on one or more eggs or an entire nest. You can create your own nest (master) or create a branch in an existing nest. For now, Runtime contributors will review any new areas of support that you may wish to introduce e.g. a new board support package (BSP) or a new network protocol.
-A contributer role necessarily implies he or she is a Mynewt user (see below) of some or all of the products developed.
+* Newt Tool helps you mix the specific packages for the combination
+of hardware and low-level embedded architecture features of the
+user's choice and generate the corresponding run-time image based
+on the NewtOS. It provides the infrastructure to manage and build
+for different CPU architectures, memory units, board support packages
+etc., allowing a user to formulate the contents according to the
+low-level features needed by his or her project.
-### A Mynewt user
-An application developer is interested only in using software available in this ecosystem to build a top level build artifact. He or she may either:
+### Terminology
-* Use a pre-built nest, or
-* Spawn a new nest using the newt tool for a target where a target is a custom combination of supported hardware components
+A Mynewt user starts with a project in mind that defines the
+application or utility that he or she wants to implement on an
+embedded device. Making an LED blink on an electronics prototyping
+board is a common starter project. Enabling a BLE (Bluetooth Low
+Energy) peripheral mode on a development board is a more complex
+project. Specifying a project requires naming it, at the very least,
+and then adding the desired properties or attributes. In order to
+actualize a project, it needs to be applied to a target which is
+essentially a combination of some specified hardware and the execution
+environment.
+
+In the mynewt lifecycle, a project grows in a nest. A nest may house
+multiple projects. The nest is, therefore, a repository where various
+component packages for one or more projects reside. Each package
+is an egg (naturally!). However, in the world of Mynewt an egg may
+consist of other eggs! For example, the starter project Blinky is
+an egg consisting of several constituent eggs that enable core
+features. The egg form is suitable for elemental units of code as
+it explicitly exposes characteristics such as dependencies, versions,
+capabilities, requirements etc., thus making assembling appropriate
+components for a project and building an image for it easy to follow,
+modular, and robust.
+
+A nest can be given any name. For example, you will see a nest named
+"tadpole" in Mynewt
+([https://git-wip-us.apache.org/repos/asf?p=incubator-mynewt-tadpole.git](https://git-wip-us.apache.org/repos/asf?p=incubator-mynewt-tadpole.git)).
+It contains all the core libraries of the operating system for the
+native platform which currently supports compilation on Mac OS X.
+The core libraries are contained in the form of eggs where an egg
+is a basic unit of implementation of any aspect of the RTOS. The
+eggs are distributed in the following directory structure inside
+the nest:
+
+* libs: contains the two eggs `os` and `testutil` * hw: contains
+three eggs - (i) `hal` which has the abstraction layer (HAL) API
+definitions that all BSP and MCU implementations must support, (ii)
+`/mcu/native` which in an MCU implementation for the native platform
+(a simulator, in this case), and (iii) `bsp/native` which is a BSP
+implementation for the native platform * compiler: contains the
+`sim` egg which bundles the compiler specifications for the native
+platform.
+
+Let's explore this sample nest a bit further. The `libs/os` egg
+contains code for scheduler, process/thread/memory management,
+semaphores etc. It is the core RTOS which ports to all supported
+chip platforms.The `libs/testutil` egg contains code for testing
+packages on hardware or simulated environment. The `hw/hal` egg
+contains header files that provide abstraction for physical hardware
+components such as GPIO (general purpose input/output), network
+adapters, timers, and UARTs. This `hw/hal` egg is an MCU peripheral
+abstraction designed to make it easy to port to different MCUs
+(microcontrollers). The `hw/mcu/native` egg contains code for
+microcontroller operations on the native platform. The `hw/bsp/native`
+egg contains the board support package for the native platform. And
+finally, the sixth egg `sim` contains the compiler specifications
+such as path and flags. Currently the compilation is supported on
+Mac OS X.
+
+You can see another nest in the mynewt ecosystem called the "larva".
+It was spawned from the skeletal "tadpole" nest using the newt tool.
+Spawning is easy - ` $ newt create nest <your_nest_name> `. "larva"
+is the developer's test repository containing all sorts of eggs
+being written and incubated, including ones to enhance the core
+operating system which should eventually make their way into the
+"tadpole" nest. There is a `hatch_tadpole` script to update the
+"tadpole" nest when the core OS related eggs in "larva" are ready.
+
+There is a third nest named "newt" that contains all the eggs needed
+to support the build and release process of mynewt software. In the
+future, there will also be pre-built nests for certain common
+hardware devices to enable a user to quickly get started with a
+project.
-In either case, the user would use the newt tool to create and set the target in the chosen nest. The newt tool would then be used to build out the target profile which would determine which eggs to choose. Finally, the user would use the newt tool to generate a run-time image that can be run on the device.