常见物联网操作介绍

简介: 常见物联网操作介绍

开发者学习笔记【阿里云物联网助理工程师认证(ACA)常见物联网操作介绍

课程地址:https://edu.aliyun.com/course/3112060/lesson/18970

常见物联网操作介绍

 

课程目标

学习完本节课程,你将能够

1. 了解有哪些常见的物联网操作系统

2. 理解常见的物联网操作系统的特点和相关功能

 

一. Linux


Linux操作系统全称GNU/Linux,是一种免费使用和自由传播的类 Linux

操作系统,也就是说你用这种操作系统你是不需要交钱的,像我们现在电脑里面装的正版的Windows系统,其实他都是需要向微软交钱的。

第二个自由传播,我们可以在网上下载这个Linux系统的源代码,并且它也允许你在源代码上进行修改,增添你自己想要的功能。你也可以把这些源代码发布到网上去,它是支持这样的一个共享自由传播的。Linux内核它是由 Linux本纳蒂克斯·托马斯在1991年10月5号首次发布,它的产生是受到Linux和Unix思想的启发。


在Linux系统之前有Unix操作系统,这个Unix操作系统也是一个非常强大的操作系统像现在的苹果操作系统,它底层的就是Unix操作系统,Unix操作系统是向广大用户免费开放的,但是后面用的人越来越多,其实商业价值也体现的越来越明显,所以说他就把这个版权收回来,是要收钱,不能免费给你用,内核源码也不能免费开放给大家,让大家自由在网上传播。


那这个时候就有一个大学老师,荷兰的一个大学老师。他平时就用这个Unix操作系统来给大家讲解计算机系统的一些原理和功能,然后现在Unix操作系统完全不向大家开放,他就自己搞了一个Minix操作系统,用这个Minix操作系统来给大家讲解,介绍系统的相关知识。


刚才这个Minix操作系统也是基于Unix操作系统的设计思想来设计的,到后面就有这么一个学生报了这个大学老师的这门课,就是我们这个Linux创始人,他上这个教授的课之后,他觉得Minix操作系统有一些他觉得不太合适的地方,然后他就结合Linux和Minix的一些设计思想,自己写了一个操作系统内核。


这个操作系统内核就是我们的Linux内核,也是一个大学生写出来的。后面这个Linux操作系统内核,然后大家纷纷拿到这个内核去研究,发现他的这个设计思想非常好。


它是基于一个proxy的一个多用户多任务支持多线程和多CPU的操作系统,这个操作系统在我们现在看起来很普通,但是在当时那是特别厉害的。


首先我们看一下多用户,什么是多用户呢?就是你这台系统允许同时多个用户同时登陆进去,同时使用这台电脑进行工作,而且互相之间没有影响。


多任务的话就是允许你这个操作系统同时运行多个任务,然后我们看到后面这个他能够运行主要的Unix工具软件,应用程序和网络协议。这一点也是他后面越来越火爆的原因,因为Unix操作系统公布出来之后,很多企业,很多公司,政府单位,学校都用Unix操作系统来开发一些软件。


或者说把办公室使用,一些其他的用途,后面有那个收费了大家不能随便用,这个时候大家就急需要有一个和Unix功能相似的操作系统来代替它,那这个时候Linux就应运而生,它能够运行Unix 51工具软件,应用程序和网络协议。也就是说Unix的那一套东西在Linux上面它也是可以的,所以说大家纷纷都用Linux来代替Unix。


它支持32位和64位硬件,也就是说你32位机上可以安装Linux系统,你64位机器上也可以安装Linux系统。


然后我们看到这里Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统,目前有上百种不同的发行版本,这个以网络为核心的设计思想,假如我们有一些资源需要共享,或者说一些服务大家一起去使用,去调用,那我这些共享的资源或者服务,就可以把它放到一个机器上面。


系统性能稳定

由于这个Linux操作系统,它支持多用户多任务,别人说我们不同的客户端可以登录到这个Linux操作系统,来访问他的共享资源,来请求他提供的公共服务,那这样的一种就是以网络为核心的网络操作系统。


现在我们市面上的很多服务器,他跑的系统都是Linux操作性99.9%的服务系统跑的都是Linux操作系统,它的性能非常稳定,举一个非常简单的例子,比如你这台机器一直开机,一直运行,运行到半个月或者说一个月它就要崩溃掉了,它就要重启了,不重启的话呢它就运行不下去了。


但是Linux操作系统它可以连续稳定运行几个月,甚至几年他都不需要重启,这就是他稳定的一个体现。另外,Linux操作系统防火墙普遍性能非常强,配置起来也非常简单,系统的安全性非常高,所以说很多企业把它当做服务器和防火墙来使用。


它具有开放源码,没有版权,技术社区用户多的特点

开放源码了,那么用户就可以对这个Linux系统进行自由裁剪,让他去适配不同的应用环境。比如这个环境不需要某个功能,就把它去掉,那个环节呢又需要某个功能,就把它加上去。这样我们就可以灵活的控制系统内核的大小,所以说它的灵活性特别高,功能非常强大,而且成本低,成本低是因为我们不需要付版权费。


另外Linux操作系统可以成为开发路由交换设备的理想开发平台,因为他系统中内嵌了网络协议站,这个网络协议上可以经过适当的配置就可以实现路由的功能,所以说它是成为开发路由交换设备的理想开发平台。


Linux系统同时具有字符界面和图形界面

我们在字符界面可以通过键盘输入相应的指令来进行操作,然后也可以通过图形界面,类似于我们Windows操作系统的界面,用鼠标来对它进行操作。


然后我们在一些嵌入式设备中或者说硬件资源不是很多的物联网设备里面,那么我们安装的这个Linux操作系统只需要安装字符界面就可以不需要安装图形界面。


因为图形界面运行起来也是需要消耗系统资源的,如果我们是在一些智能设备里面要有良好的用户交互体验,那么我们可以在这个设备里面将图形界面安装上去。


可以运行多种硬件平台上

它可以运行多种硬件平台上像x86,680 x0,Alpha,Intel64 等处理器的平台,还可以作为一种嵌入式操作系统运行在掌上电脑机顶盒或者游戏机上面。


系统工具链非常完整

我们对它进行简单的操作就可以配置出合适的开发环境,减少我们开发的过程,减少我们开发过程中仿真工具的一些障碍等等。所以一般开发人员首选的操作系统就是Linux操作系统。

以上就是Linux操作系统的介绍和一些特征,接下来我们看另外一个操作系统FreeRTOS系统。


FreeRTOS

迷你的嵌入式实时操作系统

FreeRTOS系统,它是一个迷你的嵌入式实时操作系统,是一个非常轻量级的操作系统,它的一些基本功能主要包括任务管理,时间管理,信号量,消息队列,内存管理,记录功能,软件定时器,协程等。

可基本满足较小系统的需要,能够在小RAM单片机上运行。


内核支持优先级调度算法

FreeRTOS内核支持优先级调度算法,及每个任务可根据重要的程度不同被赋予一定的优先级。

CPU总是让处于就绪态的优先级最高的任务先运行,同时FreeRTOS内核支持垄断调度算法系统允许不同的任务使用相同的优先级,也就是说不同的任务他们的优先级是一样的。

在这种情况下,如果没有更高优先级任务的情况下,这些相同优先级的任务垄断的使用CPU共享CPU的使用时间。


系统给每一个要执行的任务分配一个时间段。比如十毫秒,相同优先级任务分配到的执行时间都为10毫秒。


A任务使用CPU执行完10毫秒之后,不管A任务有没有执行完,CPU马上切换到B任务,B任务执行完10毫秒之后,不管任务有没有执行完,CPU再切换到C任务,然后C任务也是10毫秒。

这样依次下去到最后一个任务10毫秒用完了之后CPU重新垄断回来执行第一个任务,然后第二个任务,第三个任务等等。有第一个任务,第二个任务,第三个任务,这就是基于时间片的垄断调度算法。


内核可以设置为可剥夺内核和不可剥夺型内核

FreeRTOS内核可以设置为可剥夺内核和不可剥夺型内核。

当FreeRTOS被设置为可剥夺内核时,处于就绪态的高优先级任务,能剥夺低优先级任务的CPU使用权,这样可以保证系统实时性的要求,当FreeRTOS被设置为不可剥夺型内核时,处于就绪态的高优先级任务只有等当前运行任务主动释放CPU的使用权才能获得运行,这样可以提高CPU的运行效率。

因为高优先级任务夺取第一优先级任务的CPU使用前的时候,它会有一个任务切换,需要将当前的优先级任务的运行数据保存起来,然后才去运行高优先级的任务,等高优先级任务运行完了之后,再去读取保存的低优先级任务数据。


高优先级任务的先执行,这样就降低了CPU的运行效率,所以当FreeRTOS被设置为不可剥夺内核时,处于就绪态的高优先进任务,只有等当前运行任务主动释放CPU使用权才能获得运行,来提高CPU的运行效率。


FreeRTOS只是一个操作系统内核

FreeRTOS只是一个操作系统内核,需要扩展第三方的GUI,TCP协议站等才能实现一个较复杂的系统。


也就是说它本身是没有图形界面的,如果我们需要图形界面我们需要扩展,我们需要让他支持网络通信,那么我们也需要扩大TCP协议站相对于ucsmb os等操作系统。FreeRTOS操作系统它是完全免费的,操作系统具有源码公开。


可移植,可裁减,调度策略灵活的特点,可以很方便的移植到各种单片机上去运行。目前FreeRTOS已经发展到支持包含X86,,Xilinx,Altera等多达30种的硬件平台,具有非常广阔的应用前景。

以上就是对FreeRTOS的介绍,接下来我们来看一下阿里推出的阿里AliOS Things物联网操作系统

 

AliOS Things物联网操作系统

它是一个面向IoT领域的轻量级物联网嵌入式操作系统。致力于搭建云端一体化IoT基础设备,具备极致性能,极简开发,云端一体,组建丰富,安全防护等关键能力,并支持终端设备连接到阿里云Link,可广泛用于智能家居,社会,城市,新出行等领域。


阿里AliOS Things的系统特点

第一个特点是全面彻底安全保护提供系统和芯片及安全保护,也就是说它不仅提供系统层的安全防护,更是深入到芯片级别进行安全防护。另外它支持可信运行环境,支持ID跟身份证和秘钥验证,支持系统调用。


假如你直接访问或者修改系统内核的数据,那么可能就导致系统安全,导致系统崩溃或者数据泄露等等。


也就是说它不支持用户直接访问或者修改系统内核的数据,你要访问或者修改系统内核的数据,必须使用系统内核提供的系统接口,按照系统提供的方式来访问和修改内核的数据。这样就不允许用户随便修改,你必须按照他的方式来修改,这样在一定程度上就保证了系统的安全运行。

第二个特点是简易开发,支持C/JavaScript等语言开发;提供IDE,这个IDE它支持代码编辑,编译,调试,内存泄露检测等。开发的人员使用这个IDE可以直接在Linux或者Mac Os平台上开发,开发好的程序可以直接移植到阿里上面运行。


另外它还支持GDB/Valgrind/Per等常用的Linux平台工具,像GDB的话是一个代码调试工具,Valgrind也是一个代码调试工具,只不过它是侧重于内存泄漏检测的,它还支持微内核基础上的POSIX实现,方面程序框架和程序库的移植。


第三个特点是支持最小力度系统更新,它不仅支持整个APP独立升级也支持多病或差分升级。

多病或差分升级是升级系统的某一部分,这种升级方式在控制流程上要更严谨,对于整包升级来说更不容易控制。


最后一个特点是多环境支持,他支持组件式开发,开发人员可以利用阿里 AliOS Cube 工具灵活组合产品软件,并且支持SOC  I/O接口标准定义支持版级外设驱动,在 AliOS Things 平台重复使用,最重要的一点是支持云端一体在线开发环境,提供IoT全链路开发,模拟和部署支持

第五个特点是产品及TCP/UDP/IPV6/IPV4支持并且支持MQTT,C0AP,Wi-Fi,蓝牙,loRa, NB-loT等无线通信技术。


支持自组织网络,支持阿里巴巴自研的uMesh技术,支持物联网设备自动建立通信网络。

以上就是阿里AliOS Things 的系统介绍和特点。

 

本节知识

第一个是Linux系统的特点及硬件应用平台

第二个是FreeRTOS系统的特点及硬件应用平台

第三个是AliOS Things系统介绍和它的特点

 

随堂思考

1. Linux系统的创始人是谁?

是荷兰的林纳斯

2. 解释FreeRTOS可剥夺型内核和不可剥夺型内核,如何获得CPU的执行权限?

可剥夺型内核情况下高优先级的任务就绪时,可以直接剥夺当前第一优先级任务的CPU使用权限。那么不可剥夺型内核是以高优先级助学任务必须等当前第一优先级任务执行完了之后才可以获得CPU的执行权限,

3. AliOS Things系统是哪一家公司研发的?是一个面向什么的操作系统?

是阿里巴巴研发出来的;它是一个面向互联网轻量级的嵌入式操作系统。

4. 什么是差分升级?

差分升级就是对整个系统的某一部分进行升级。

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
4月前
|
存储 IDE 物联网
物联网生活平台使用8266远程控制的操作实例
物联网生活平台使用8266远程控制的操作实例
133 0
|
物联网 Linux C语言
《嵌入式Linux与物联网软件开发——C语言内核深度解析》一1.5 C语言如何操作内存
本节书摘来自华章出版社《嵌入式Linux与物联网软件开发——C语言内核深度解析》一书中的第1章,第1.5节,作者朱有鹏 , 张先凤,更多章节内容可以访问云栖社区“华章计算机”公众号查看。 1.5 C语言如何操作内存 1.5.1 C语言对内存地址的封装 前面一直谈内存,其间虽然穿插一些C语言的内容,但还不够细致、深入。
2203 0
|
5天前
|
供应链 物联网 区块链
未来交织:区块链技术、物联网和虚拟现实的融合革新
【4月更文挑战第25天】 随着科技的迅猛发展,新兴技术如区块链、物联网(IoT)、以及虚拟现实(VR)正在重塑我们的世界。这些技术不仅在独立领域中取得显著进展,而且开始相互交融,催生出一系列创新应用。本文将探讨这些技术的发展趋势,并深入剖析它们在不同行业中的应用场景,包括供应链管理、智能家居、远程工作、以及沉浸式娱乐等领域。
|
9天前
|
存储 供应链 物联网
未来技术纵横谈:区块链、物联网与虚拟现实的融合革新
【4月更文挑战第21天】 随着科技不断进步,新兴技术正在重塑我们的世界。本文将深入探讨三种引人注目的技术——区块链、物联网(IoT)和虚拟现实(VR)——它们各自的发展趋势及其在不同领域的应用前景。区块链技术以其不可篡改的数据记录特性,在金融安全、供应链管理等领域展现出巨大潜力;物联网通过智能设备互联,推动智能家居、智慧城市的发展;而虚拟现实则以其沉浸式体验,改变教育、娱乐等多个行业的面貌。这些技术的交叉融合预示着一个更加智能、互联和虚拟的未来。
|
8天前
|
供应链 安全 物联网
未来技术纵横谈:区块链、物联网与虚拟现实的融合革新
【4月更文挑战第22天】 在数字化浪潮中,新兴技术的蓬勃发展正推动着传统行业的变革与升级。区块链技术以其不可篡改和去中心化的特性,为数据安全和信息透明提供了新的解决方案;物联网(IoT)通过智能设备的互联互通,实现了环境与行为的智能化管理;而虚拟现实(VR)技术则拓展了人们的感官体验,创造了沉浸式互动的新空间。本文聚焦于这些技术的发展趋势,探讨其在多个应用场景中的结合与创新,旨在描绘一幅技术交织下的未来蓝图。
|
4天前
|
安全 物联网 区块链
未来技术纵横谈:区块链、物联网与虚拟现实的融合与创新
【4月更文挑战第26天】 随着科技的不断进步,新兴技术如区块链技术、物联网(IoT)、以及虚拟现实(VR)正在逐渐改变我们的生活和工作方式。本文将探讨这些技术的独立发展路径,并着重分析它们相互结合时可能产生的创新应用。通过深度剖析每项技术的核心优势和潜在挑战,文章旨在描绘出一个多元化的技术趋势蓝图,并对如何利用这些技术推动社会和经济的可持续发展提供前瞻性的思考。
|
2天前
|
存储 安全 物联网
未来技术的潮流:区块链、物联网和虚拟现实的交汇点
【4月更文挑战第28天】本文将探讨三种新兴技术——区块链、物联网(IoT)和虚拟现实(VR)——的发展趋势,以及它们在未来可能的应用场景。我们将看到这些技术如何相互交织,创造出全新的商业模型和服务,以及它们对社会经济结构的潜在影响。
|
2天前
|
供应链 安全 物联网
未来技术浪潮:区块链、物联网与虚拟现实的融合与创新
【4月更文挑战第28天】 随着科技的飞速发展,新兴技术如区块链、物联网(IoT)和虚拟现实(VR)正不断重塑我们的世界。本文将深入探讨这些技术的发展趋势及其在不同领域的创新应用。区块链技术以其不可篡改和去中心化的特性,正在金融、供应链管理等领域发挥巨大作用。物联网通过智能设备连接现实世界与数字世界,推动了智能家居、智慧城市的发展。而虚拟现实技术则在娱乐、教育、医疗等行业提供了沉浸式体验。这些技术的融合预示着一个全新的技术时代的到来,它们将共同构建一个更加智能、互联和互动的未来。
|
5天前
|
安全 物联网 区块链
未来技术的融合潮流:区块链、物联网与虚拟现实的交汇点
【4月更文挑战第25天】 随着科技的不断进步,新兴技术如区块链、物联网(IoT)和虚拟现实(VR)已逐渐从概念验证走向实际应用。这些技术不仅单独发展迅猛,而且开始相互融合,创造出前所未有的应用场景和商业模式。本文将深入探讨这些技术的发展趋势,分析它们如何协同工作,以及在多个行业中的潜在应用。特别地,我们将聚焦于金融、医疗和娱乐等行业,揭示这些技术如何推动创新并带来颠覆性的变化。
|
5天前
|
供应链 安全 物联网
未来技术的融合潮流:区块链、物联网与虚拟现实的革新之旅
【4月更文挑战第25天】 在数字时代的浪潮中,新兴技术正以前所未有的速度重塑世界。本文将深入探讨区块链技术、物联网(IoT)以及虚拟现实(VR)这三个领域的发展趋势和实际应用。从确保交易安全到实现设备的智能对话,再到创造沉浸式体验,这些技术正在推动着社会的各个维度向前发展。文章旨在提供一个全景视角,展现这些技术如何相互交织,共同构建一个更加智能、互联且安全的未来。
10 0

相关产品

  • 物联网平台