AliOS-Things引入

2023-11-02

目录

一、简介

 1.1 硬件抽象层

1.2 AliOS-Things内核 rhino

​编辑 1.3 AliOS-Things组件

二、如何进行AliOS-Things开发

三、安装环境

安装python pip git

修改pip镜像源

安装aos-cube


一、简介

        AliOS-Things是阿里巴巴公司推出的致力于搭建云端一体化LoT软件。AliOS-Things是2017年推出的面向IoT领域的轻量级开源物联网嵌入式操作系统,具备云端一体、多种服务组件、安全防护等关键能力,并支持终端设备连接到阿里云Link,可广泛应用在智能家居、智慧城市、新出行等领域。

AliOS-Things的组成包括:

  1. 板级支持包(BSP):主要由SoC供应商开发和维护。
  2. 硬件抽象层(HAL):比如WiFi和UART。
  3. 内核:包括Rhino实时操作系统内核、Yloop、VFS、KV存储。
  4. 协议栈:包括TCP/IP协议栈(LwIP),uMesh网络协议栈。
  5. 安全:安全传输层协议(TLS),可信服务框架(TFS)、可信运行环境(TEE)。
  6. AOS API:提供可供应用软件和中间件使用的API。
  7. 中间件:包括常见的物联网组件和阿里巴巴增值服务中间件。
  8. 示例应用:阿里自主开发的示例代码,以及通过了完备测试的应用程序(比如Alinkapp)。

所有的模组都已经被组织成组件,且每个组件都有自己的.mk文件,用于描述它和其它组件间的依赖关系,方便应用开发者按需选用。

这里我们之开发其中的一部分。

 1.1 硬件抽象层

1.2 AliOS-Things内核 rhino

 1.3 AliOS-Things组件

 

二、如何进行AliOS-Things开发

在文档工具中有开发手册。

 

 

 

三、安装环境

 先自己搞一个ubuntu然后把官方demo移植就好。

安装python pip git

  1. 安装python pip git

lzd@ubuntu:/mnt/hgfs/03-share$ sudo apt-get install -y python python-pip git
  1. 查看python pip git版本

lzd@ubuntu:/mnt/hgfs/03-share$ pip -V && python -V && git --version
pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)
Python 2.7.12
git version 2.7.4
​

 

修改pip镜像源

参考阿里云PyPI 镜像

PyPI 镜像

  1. 创建pip配置文件

lzd@ubuntu:~$ mkdir .pip
lzd@ubuntu:~$ cd .pip/
lzd@ubuntu:~/.pip$ touch pip.conf
  1. 编辑pip.conf

vi pip.conf

#步骤
1.windows 拷贝文本内容
2.vi 进入编辑模式
3.shift+insert 粘贴文本

 

  1. 更新pip

python -m pip install --upgrade pip

 

安装aos-cube

pip install aos-cube

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AliOS-Things引入 的相关文章

  • 用另一个文件的标签为图表(ggplot2)中的标题添加下标

    在我的程序中 我有两个主要文件 第一个包含数据 第二个包含标签 或图形标题 文件总数1 数据 3 10000 3 32039232 1 0 0017290351 2 0 0002781092 3 10001 3 32101193 1 0 0
  • linux新手关于嵌入式linux设备驱动的问题

    最近在研究linux驱动 正如我读过的那些文章所说 设备驱动程序模块很可能会根据内核的需要自动加载 因此我想知道内核如何确定为特定设备 声卡 I2C spi 设备 等 我也无法彻底想象内核如何在启动时检测每个硬件设备 与嵌入式linux相关
  • 段错误...关于你好世界

    这段代码非常简单 但我在 x86 64 Linux 系统上遇到了段错误 这让我很烦恼 刚开始接触asm 请耐心等待 与 NASM 组装nasm f elf64 test asm 与连接ld o test test o SECTION tex
  • Qt 嵌入式触摸屏 QMouseEvents 在收到 MouseButtonRelease 之前未收到

    我在带有触摸屏的小型 ARM 嵌入式 Linux 设备上使用 Qt 4 8 3 我的触摸屏配置了 tslib 并对其进行了校准 因此 etc 中有一个 pointcal 文件 我的触摸事件的位置工作得很好 但无论如何我都会在鼠标按下或鼠标释
  • 如何在 Vim 中突出显示 Bash 脚本?

    我的 Vim 编辑器自动突出显示 PHP 文件 vim file php HTML 文件 vim file html 等等 但是当我输入 vim file在里面写一个Bash脚本 它不会突出显示它 我如何告诉 Vim 将其突出显示为 Bas
  • 如何通过ssh获取远程命令的退出代码

    我正在通过 ssh 从远程计算机运行脚本 ssh some cmd my script 现在 我想在本地计算机上存储 shell 脚本的退出状态 我该怎么做 假设没有任何问题ssh其本身 其退出状态是在远程主机上执行的最后一个命令的退出状态
  • 选择fasta文件中氨基酸超过300个且“C”出现至少4次的序列

    我有一个包含蛋白质序列的 fasta 文件 我想选择超过 300 个氨基酸且半胱氨酸 C 氨基酸出现超过 4 次的序列 我使用此命令来选择具有超过 300 个 aa 的序列 cat 72hDOWN fasta fasta bioawk c
  • 如何获取与 shell 中的文件名模式匹配的所有文件的总文件大小?

    我正在尝试仅使用 shell 来计算与文件名模式匹配的所有文件 在目录树中 的总大小 以字节为单位 这是我到目前为止所拥有的 find name undo exec stat c s awk 总计 1 END 打印总计 有没有更简单的方法来
  • 如何在C(Linux utf8终端)中打印“盒子抽屉”Unicode字符?

    我正在尝试显示 方框图范围 2500 257F 中的 Unicode 字符 它应该是标准 utf8 Unicode 标准 版本 6 2 我根本做不到 我首先尝试使用旧的 ASCII 字符 但 Linux 终端以 utf8 显示 并且没有显示
  • 使用脚本检查 git 分支是否领先于另一个分支

    I have branch1 and branch2我想要某种 git branch1 isahead branch2 这将显示如果branch1已承诺branch2没有 也可能指定这些提交 我无法检查差异原因branch2 is在之前br
  • bash 将输出重定向到文件,但结果不完整

    重定向命令输出的问题已经被问过很多次了 但是我有一个奇怪的行为 我使用的是 bash shell debian 版本 4 3 30 1 release 并尝试将输出重定向到文件 但并非所有内容都记录在文件中 我尝试运行的 bin 文件是 l
  • 链接错误:命令行中缺少 DSO

    我对 Linux 使用 Ubuntu 14 04 LTS 64 位 相当陌生 来自 Windows 并且正在尝试移植我现有的 CUDA 项目 当通过链接时 usr local cuda bin nvcc arch compute 30 co
  • Crontab 每 5 分钟一次 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我如何告诉 crontab 每 5 分钟运行一次 但从每小时的第二分钟开始 换句话说 我想在以下时间执行我的脚本minute 5 2 例如 我的脚本应
  • 如何从 C++ 程序中重新启动 Linux?

    我有一个 Qt 4 GUI 我需要在下拉菜单中提供一个选项 允许用户选择重新启动计算机 我意识到这对于以其他方式重新启动计算机的能力来说似乎是多余的 但选择需要保留在那里 我尝试使用 system 来调用以下内容 suid root she
  • 来自守护程序的错误响应:加入会话密钥环:创建会话密钥:超出磁盘配额

    我尝试在我的服务器上安装 docker 使用本教程 https docs docker com install linux docker ce ubuntu 我想远程运行 docker 镜像并使用 portainer Web 界面来管理一切
  • Python 3.4.3 subprocess.Popen 在没有管道的情况下获取命令的输出?

    我试图将命令的输出分配给变量 而不让命令认为它正在通过管道传输 原因是 如果正在通过管道传输 则相关命令会给出未格式化的文本作为输出 但如果从终端运行 则会给出颜色格式化的文本 我需要获取这种颜色格式的文本 到目前为止我已经尝试了一些事情
  • 为什么 fork 炸弹没有使 android 崩溃?

    这是最简单的叉子炸弹 我在许多 Linux 发行版上执行了它 但它们都崩溃了 但是当我在 android 终端中执行此操作时 即使授予后也没有效果超级用户权限 有什么解释为什么它没有使 Android 系统崩溃吗 一句话 ulimit Li
  • Linux 中 m 标志和 o 标志将存储在哪里

    我想知道最近收到的路由器通告的 m 标志和 o 标志的值 从内核源代码中我知道存储了 m 标志和 o 标志 Remember the managed otherconf flags from most recently received R
  • SSH,运行进程然后忽略输出

    我有一个命令可以使用 SSH 并在 SSH 后运行脚本 该脚本运行一个二进制文件 脚本完成后 我可以输入任意键 本地终端将恢复到正常状态 但是 由于该进程仍在我通过 SSH 连接的计算机中运行 因此任何时候它都会登录到stdout我在本地终
  • 如何使用 JSch 将多行命令输出存储到变量中

    所以 我有一段很好的代码 我很难理解 它允许我向我的服务器发送命令 并获得一行响应 该代码有效 但我想从服务器返回多行 主要类是 JSch jSch new JSch MyUserInfo ui new MyUserInfo String

随机推荐

  • Sharding-JDBC(八)5.3 系列升级解读

    目录 一 背景 二 影响范围 1 Maven 坐标调整 2 自定义算法调整 3 事务调整 4 配置文件调整 三 升级指导 1 新的 ShardingSphereDriver 数据库驱动 2 正在使用 Spring Boot Starter
  • 2023华为OD机试真题【找朋友/单调栈】

    题目描述 在学校中 N个小朋友站成一队 第i个小朋友的身高为height i 第i个小朋友可以看到的第一个比自己身高更高的小朋友j 那么j是i的好朋友 要求j gt i 请重新生成一个列表 对应位置的输出是每个小朋友的好朋友位置 如果没有看
  • python爬虫系列5--xpath

    教程地址 http www runoob com xpath xpath tutorial html XPath在python的爬虫学习中 起着举足轻重的地位 对比正则表达式re两者可以完成同样的工作 实现的功能也差不多 但XPath明显比
  • 用 STM32 通用定时器做微秒延时函数(STM32CubeMX版本)

    概述 在使用 DHT11 的时候 时序通信需要微秒来操作 STM32CubeMX 自带一个系统时钟 但是实现的是毫秒级别的 因此就自己用通用计时器实现一个 文章目录 概述 1 配置定时器时钟 2 计数器时钟频率及计数模式 预分频系数 计数器
  • tomcat调优的几个方面

    和早期版本相比最新的Tomcat提供更好的性能和稳定性 所以一直使用最新的Tomcat版本 现在本文使用下面几步来提高Tomcat服务器的性能 增加JVM堆内存大小 修复JRE内存泄漏 线程池设置 压缩 数据库性能调优 Tomcat本地库
  • css画间距可控制的虚线

    借助linear gradient dash div margin left 50px margin right 50px height 10px background linear gradient to left transparent
  • linux git代码明明是最新版本的,status为啥全是modified?

    解决办法 依次执行以下两句代码 git rm cached r git reset hard
  • 使用 PyTorch 对自定义数据集进行二分类(基于Vision Transformer)

    内容 简短描述 ViT 的简短描述 编码部分 使用 ViT 对自定义数据集进行二分类 附录 ViT hypermeters 解释 简短描述 视觉转换器是深度学习领域中流行的转换器之一 在视觉转换器出现之前 我们不得不在计算机视觉中使用卷积神
  • 【Python】turtle海龟画图练习

    Turtle 方法查看 turtle 海龟绘图 同心圆 import turtle i 1 r 0 while i lt 6 r 30 自己设 turtle circle r 画个圆 turtle penup 起笔 turtle sety
  • 前后端RSA加解密

    前端vue RSA加密 一 安装 npm install jsencrypt save dev 二 创建js文件 在src目录下创建util文件夹 然后在util文件夹下创建 security js 文件 1 引入jsencrypt 引入加
  • Java数据类型转换

    1 基本数据类型 byte short char int long float double boolean 2 引用类型数据 String 枚举 数组 接口 枚举 3 基本数据和引用类型数据的区别 1 基本数据类型变量 存的是值的本身 2
  • APP从苹果开发者A账号转移到B账号的流程

    今天把公司的一个APP从苹果开发者A账号转移到B账号 在这里记录具体操作流程 准备好开发者账号A APP所在的原账号 开发者账号B APP迁移目标账号 登录A账号 选择 App Store Connect 点击 Go to App Stor
  • Linux相关关机命令及服务器关机后如何进行开机操作

    linux一般用在服务器上 很少遇到关机的情况 毕竟关机服务就会中断 除非特殊情况不得已才会关闭 正确的关机流程 sync gt shutdown或reboot或halt 无论重启还是关机 都需要先sync将内存数据同步到硬盘中 避免数据丢
  • 抽象数据类型Polynomial 的实现(第二章 P40-43 算法2.22,2.23)

    抽象数据类型Polynomial 的实现 多项式的加法 乘法 typedef int Status Status是函数的类型 其值是函数结果状态代码 如OK等 typedef int Boolean Boolean是布尔类型 其值是TRUE
  • vue关于json数据格式的展示<pre>标签的使用

    起因 需要把字符串按json格式展示到页面上 直接展示或者利用JSON parse 展示页面上数据都会挤成一坨 解决方法 利用
  • 重构——在对象之间搬移特性(1)

    我们都知道 类往往因为承担过多的责任而变得臃肿不堪 这种情况下 一般会使用 提炼类 这种手法将一部分责任分离出去 如果一个类变得 不负责任 一般会使用 内联类 这种手法将它融入另一个类 如果一个类使用了另一个类 一般会运用 隐藏委托关系 手
  • Fast DDS入门六、Fast DDS的动态类型及示例程序

    上一节 Fast DDS入门五 在Windows平台创建一个简单的FastDDS示例程序 该示例程序介绍了采用Fast DDS Gen工具通过接口定义语言 IDL 来生成数据结构类 该数据结构类具备序列化反序列化处理 用户只需要关注编写ID
  • java linkedhashmap list_java – 将所有键从LinkedHashMap提取到列表的方法

    我正在使用许多LinkedHashMap 它们是LinkedHashMap lt Long Long gt LinkedHashMap lt Long Double gt 或LinkedHashMap lt Long Integer gt
  • SGI STL一级二级空间配置器代码剖析笔记

    STL不仅是一个可复用组件库 而且是一个包罗算法与数据结构的软件框架 说到框架本身就有庞大 稳定 完整而可扩展的含义 因此学习STL源码不仅可以帮助我们编写良好代码的习惯 而且能够让我们熟悉算法 数据结构 我们也会受到这种编程思维影响 在编
  • AliOS-Things引入

    目录 一 简介 1 1 硬件抽象层 1 2 AliOS Things内核 rhino 编辑 1 3 AliOS Things组件 二 如何进行AliOS Things开发 三 安装环境 安装python pip git 修改pip镜像源 安