Openthread. Присоединение к существующей сети(Commissioning)

Для подключения к сети требуется одно устройство с ролью Commissioner и одно устройство с ролью Joiner. Commissioner - это либо устройство в существующей Thread сети, либо внешнее по отношению к thread сети устройство (например, мобильный телефон), которое выполняет роль Commissioner. Joiner - это устройство, желающее присоединиться к сети thread. Commissioner используется для аутентификации устройства в сети. Он не передает и не владеет учетными данными сети thread, такими как сетевой ключ.

COAP

### RFC 7252 Одним из широко используемых протоколов для взаимодействия между IoT-устройствами (Internet of Things) или IoT-устройствами и внешней средой является протокол CoAP – Constrained Application Protocol ущественная особенность протокола СoAP – это его совместимость с протоколом HTTP, что обеспечивает при его использовании взаимодействие совокупности устройств IoT, формирующих некую сеть, с всемирной паутиной Интернет.

Си. Указатели

Указатель - это переменная, в которой хранятся адреса памяти других объектов. ``` #include <stdio.h>

Си. Память, Объекты и адреса

### Память процесса Стандарт C не определяет, как должна быть организована память для программы, но типичная память процесс, может выглядеть так ![Структура данных буферного кэша](https://whoisdeveloper.ru/static/img/pointers1.png) В самом низу, есть код, который запускает процесс. Код - это данные, инструкции, которым должен следовать процессор, и это часть памяти процесса. Кроме того, данные, которые существуют на протяжении всего срока службы процесса. Когда вы объявляете глобальные переменные, они живут до тех пор, пока выполняется программа, и именно здесь они находятся в памяти. Некоторые из этих данных будут доступны только для чтения. В программе определены константы, которые нельзя изменить. Строковые литералы, обычно они неизменяемы, они хранятся в памяти, доступной только для чтения, и ваша программа может выйти из строя, если вы попытаетесь их изменить. Глобальные переменные, которые вы определяете сами, если они не объявлены const, являются изменяемыми, и вы можете записывать в них.

Указатели в Си

### Память процесса Стандарт C не определяет, как должна быть организована память для запущенных программ, но типичный процесс, то есть запущенная программа, может выглядеть так ![Структура данных буферного кэша](https://whoisdeveloper.ru/static/img/pointers1.jpg) В самом низу, есть код, который запускает процесс. Код - это данные, инструкции, которым должен следовать процессор, и это часть памяти процесса. Кроме того, данные, которые существуют на протяжении всего срока службы процесса. Когда вы объявляете глобальные переменные, они живут до тех пор, пока выполняется программа, и именно здесь они находятся в памяти. Некоторые из этих данных будут доступны только для чтения. В программе определены константы, которые нельзя изменить. Строковые литералы, обычно они неизменяемы, они хранятся в памяти, доступной только для чтения, и ваша программа может выйти из строя, если вы попытаетесь их изменить. Глобальные переменные, которые вы определяете сами, если они не объявлены const, являются изменяемыми, и вы можете записывать в них.