当前位置: 首页 > 编程日记 > 正文

对XX证券报关于物联网操作系统的几个问题的答复

XX证券报提问了几个关于物联网和物联网操作系统的问题,个人表达了一些粗陋的观点,在这里发表出来,与行业朋友交流和探讨。

物联网行业最需要解决的问题是什么?

虽然物联网这个行业被炒得比较热,但是截至目前,还未形成一个被广泛认可的成功示范案例,也未形成一种被广泛认可的模式,包括商业模式和技术模式。个人认为,造成这种状态的原因,就是缺乏标准。这里的标准,不是指某个具体的技术标准,比如蓝牙和zigbee技术标准等,也不是硬性的国家标准,而是某种柔性的,能够最大限度满足未来需要,能够广泛应用到物联网的各种场景中,同时又能够把各种场景有机结合起来,形成一个宏大体系的东西。具体这是个什么东西,目前来说谁也说不清楚,否则就不缺乏了。

为了更形象的说明这个问题,可以举几个例子。比如个人计算机,之所以能够在几十年的时间里快速发展,最终酝酿出信息技术革命,最根本的因素就是其有一个标准的体系架构,即IBM兼容机体系架构。既然架构是标准的,那就意味着可批量生产,众多PC生产厂家涌现出来,为信息革命提供了物质基础。同时,架构是标准的,那么寄生在上面的软件,也是一脉相承的,能够通过不断迭代和完善,达到一个很高的高度。试想,如果个人计算机的硬件架构一直变化,那么微软公司可能一直忙着适配各种各样的不同硬件,现在估计还停留在DOS阶段,根本无暇去开发和升级windows操作系统,甚至早就被拖垮了。

另外一个例子,就是移动互联网的Android操作系统。在Android出来之前,包括芯片和集成电路,显示屏等,实际上与今天的水平差别不大,移动网络的体系架构也非常稳定和科学,也与现在没有本质差别,但就是没有形成今天的移动互联网浪潮。其原因就是没有一套标准可遵循。有很多公司,基于Linux内核开发出了性能和美观程度不亚于今天的Android的手机操作系统,但就是不能大规模推广,因为基于它开发的应用程序不可移植,只能在开发时所在的固定手机型号上运行,同时缺乏一种应用分发手段,这样就无法形成聚合效应。但是Android就通过Java语言的平台无关性和应用市场,成功的解决了这些问题。说白了,就是Android提供了一套标准,推动了移动互联网的发展。

当前的物联网领域,就是缺乏类似的标准。这种标准是无法预知的,因此无法预先制订,只能通过实践去发现,去探索。个人认为,物联网操作系统是一个很好的探索方向。如果能够在操作系统层面形成一套模式,那么必然会引爆物联网革命。

物联网市场的竞争点是什么?

我个人认为,物联网行业成熟以后,核心竞争点仍然是服务。整个行业成熟以后,组成物联网的硬件将高度标准化,就像目前的个人计算机一样。而支撑物联网运行的基础软件,都将是开源的。因此物联网的硬件和软件市场,都不会存在太高的进入壁垒,都会是完全竞争的市场,其利润水平非常薄,这是由市场规律决定的。

真正产生竞争力的,还是构筑在标准物联网硬件和软件上的服务。比如,对于智慧医疗来说,安装在用户家里或随身携带的各类医疗器械和终端,都是非常标准的。但是却存在多个提供医疗服务的服务商,这些服务商从医疗终端上采集数据进行分析,给用户提供合理的健康生活建议,对于潜在的病患者,会及时联系合适的医疗资源提前干预。可以看出来,哪个服务商能够提供更好的医疗建议,能够更早的发现隐患,能够聚集更好的医疗资源应对隐患,哪个服务商就能够胜出。比拼的是服务,以及支撑服务的整个资源体系。

但是在到达这种成熟的状态之前,当前最迫切的工作,就是尽快探索出物联网的一套标准,为物联网的发展壮大提供土壤。

ARM也推出了操作系统,为什么不被看好?

我个人也不太看好ARM的mbed,因为这不是ARM的核心战略方向。ARM的核心战略方向是芯片,其推出mbed的目的,是为了更好的销售其芯片。潜在的理念就是,在物联网领域,芯片仍然是中心,操作系统只是配角,是为芯片服务的。这显然偏离了物联网的最核心初衷。

个人的观点是,物联网行业,服务才是核心,不论是硬件还是软件,还是物联网平台,都是为用户服务的,都要以用户为中心,都要追求用户的体验和价值。在这种理念下,操作系统应该围绕用户需求去开发,聚焦用户价值去开发,而用户的需求或者用户的价值是随时变化的,因此物联网操作系统的开发组织应该是全身心的投入,心无旁骛,牢牢把握用户的需求,并在最快的时间里实现用户需求。

因此,方向背道而驰,又不能全力以赴,不被看好是正常的。但是,对于ARM的芯片能力,一直是得到业界尊重的。站在一个开发者角度上,对ARM的殷切希望就是,聚焦优势领域,力出一孔,把芯片做好,为物联网提供最好的控制中枢。

基于物联网操作系统的商业模式可能有哪些?

我不认为物联网操作系统本身可以赚钱,相反,物联网操作系统应该完全免费,完全开源。对于系统软件,个人一直持有的一个观点就是,越是基础的软件,越应该开源。纵观整个开源行业,也会发现这种规律。最早是linux操作系统开源,逐渐发展到数据库开源,比如MySQL,然后又发展到中间件开源,比如各类SOA类平台。在传统的软件领域,由于软件系统非常复杂,同时硬件设备又非常标准,在这两个前提下,有很多基于开源软件提供技术服务的公司,也可以很好的生存,比如RedHat。

但是到了物联网时代,我个人不看好基于开源软件提供服务的模式。物联网的操作系统可能非常复杂,但是运行它的硬件,却非常碎片化,小到只有几K内存的传感器,大到可以跟个人计算机比美的复杂硬件平台,比如家庭网关。在这样的形势下,企业很难形成足够的经验和积累,来支撑软件服务,因为你面对的目标硬件太多。不像传统企业市场,都是Intel,都是Cisco,都是IBM。

但并不是说物联网操作系统没有商业模式,相反,依托物联网操作系统,可以衍生出巨大的商业机会。比如参考Android的模式,操作系统本身是免费开源的,但是缺省内置对Google搜索服务和gmail服务的支持,这样就会形成一个巨大的入口,对自身的核心业务形成巨大的差异化优势。再比如说,传统硬件厂商可以依托开源的物联网操作系统,把自己的硬件驱动嵌入进去,只要用户使用了物联网操作系统,那么就可以实现对自己的专有硬件的“即插即用”,这样可大大提升硬件的销售份额。

上述仅仅代表个人观点,不一定正确,欢迎业界同行指导和讨论。欢迎加入QQ群讨论:38467832

转载于:https://www.cnblogs.com/new0801/p/6176035.html

相关文章:

Java基础 - 面向对象 - 构造方法

在类中除了成员方法之外,还存在一种特殊类型的方法,那就是构造方法。构造方法是一个与类同名的方法,对象的创建就是通过构造方法完成的。每当类实例化一个对象时,类都会自动调用构造方法。 构造方法的特点: 构造方法没…

1105 Spiral Matrix 给定数组向螺旋矩阵中填入数据

两个测试用例超时,可直接跳转到 目录 超时点1 超时点2 ​​​​​​​ 要做的事情是,将数组按照非升序/降序,顺时针从外围到内部一圈一圈地把数据填到矩阵中,并打印出来。也就是将数组排好序后,将矩阵的坐标和数组…

一晚上就能让你小腹变小的方法 - 健康程序员,至尚生活!

仅一晚上针对小腹的锻炼就会让它明显收紧,很不可思议吧?但它确实发生了。形体教练向我们推荐:做30次转身运动(双手抱在脑后站立,迅速分别向左右两侧依次扭转上肢,注意不要以膝盖为轴,使运动轴心保持在骨盆以…

Alpha 冲刺 (2/10)

前言 队名:拖鞋旅游队组长博客:https://www.cnblogs.com/Sulumer/p/9960487.html作业博客:https://edu.cnblogs.com/campus/fzu/Grade2016SE/homework/2365组内情况 燃尽图任务分布github签入记录苏路明(组长)过去两天…

互联网对erp行业到底有什么影响

1 财务管理的影响 总账、 应收应付、资金计划,支付管理。 生产计划的影响。 重大的疑惑。 转载于:https://www.cnblogs.com/sdgxbooy/p/8892655.html

PAT甲级排队问题合集 (持续更新中)

已加入的习题 A1014,A1017 问题1和2共性 1. 都是排队问题 2. 都有一条黄线 3. 都需要找到最先离开人的队伍 4. 都有着服务时间段限制(迟于某个时间点来不予受理) 问题1:1014 Waiting in Line 问题链接:1014 Waiting in Line 这一题,…

第三章:创建用户界面组件--可视化组件(一)

1.可视化组件 1.1关于可视化组件 可视化组件的特征包括:size(大小)、事件、样式、皮肤、行为。 行为:当组件被触发时,视觉,音乐效果的变化。 1.1 .1Spark and Halo 组件 Spark是flex 4中新加的组件。halo仍旧继承了以…

Rust 1.30带来更多元编程支持,并改进了模块系统

Rust的最新版本1.30扩展了过程宏,允许它们定义新的属性和类似于函数的宏。此外,它简化了Rust模块系统,使其更加一致、直观。 Rust 1.30引入了两种新类型的过程宏,“类属性的过程宏”和“类函数的过程宏”。过程宏是Rust元编程的基…

两种最大堆建堆方式

都是用完全二叉树的静态存储方式,下标从1开始。 No.1 先按照数组的次序填入完全二叉树,再从倒数第一个非叶子节点开始,一个个地看是不是要向下调整,一直下调到不能再调。 void downAdjust(int low,int high){int i low;int j …

汉字验证码和算式验证码

大家知道简单数字或者字母验证码很容易被破解,但是算式验证码或者中文汉字验证码不容易被破解, 所以建议大家在使用验证码的时候,尽量用算式验证码或者中文汉字验证码。 下面是我写的两种验证码代码,有用到的朋友可以参考下&#…

自定义Linq的Distinct

代码 1 usingSystem;2 usingSystem.Collections.Generic;3 usingSystem.ComponentModel;4 usingSystem.Data;5 usingSystem.Drawing;6 usingSystem.Linq;7 usingSystem.Text;8 usingSystem.Windows.Forms;9 10 namespaceLinqTest11 {12 publicpartialclassForm1 : Form13 {14 p…

Python itertools 实现全组合

>>> import itertools >>> data itertools.product([A, B], [1, 2, 3]) >>> list(data) [(A, 1), (A, 2), (A, 3), (B, 1), (B, 2), (B, 3)] 转载于:https://www.cnblogs.com/xiecl/p/9961825.html

PAT(甲级)2021年春季考试 7-3 Structure of Max-Heap

考察:建堆,字符串的处理 建堆上,跳了坑,才发现自己之前的方法过于笨拙,详情见两种最大堆建堆方式 字符串处理上,走的弯路更大,但是也因此牢记了两个技巧 1. cin>>str可以用getline(cin…

[linux内核][linux中断]——软中断机制

点击打开链接 一,linux软中断的概念软中断(softirq)常常表示可延迟函数的所有种类,目前linux上使用的软中断个数是有限的,linux最多注册32个,目前使用了10个,在interrupt.h中定义,中…

JS中8个常见的陷阱

译者按: 漫漫编程路,总有一些坑让你泪流满面。 原文: Who said javascript was easy ? 译者: Fundebug为了保证可读性,本文采用意译而非直译。另外,本文版权归原作者所有,翻译仅用于学习。 这里我们针对JavaScript初学者给出一些…

支持支付宝(Alipay)付款的三个美国主机商

这段时间买国外主机的筒子们越来越多,而付款就是首先摆在大家眼前的一道障碍,大部分美国主机商只能通过信用卡购买,付款不方便。因为这个原因,很多人的美国主机都是从国内的公司或者个人买的,无法享受美国主机的优质服…

(C++)string 的两种输入方式和输出方式

注&#xff1a;头文件如下 #include<string> #include<cstdio> #include<iostream>using namespace std; 注&#xff1a;第一种输入方式遇到回车停止读入&#xff0c;第二种输入方式遇到空格停止读入。 两种读入方式也都可以用来读字符数组。 int main()…

ob_get_contents();basename;file_get_contents用法

ob_get_contents(); ob_end_clean(); ob_start()使用ob_start()把输出那同输出到缓冲区&#xff0c;而不是到浏览器。然后用ob_get_contents得到缓冲区的数据。 ob_start()在服务器打开一个缓冲区来保存所有的输出。所以在任何时候使用echo &#xff0c;输出都将被加入缓冲区中…

零基础学汇编 --小甲鱼

来自http://www.51xue8.com/diannao/wangluobiancheng/2013-11-06/6584.html#fillback0100307b617b7b7b303232303266313839397b677b7b240000&anchortestanchor转载于:https://www.cnblogs.com/I-L-o-v-e-z-h-o-u/p/4235340.html

数据标准化_1

from sklearn.datasets import load_irisirisload_iris()#Z-score 数据标准化from sklearn.preprocessing import StandardScalerdata_standardStandardScaler().fit_transform(iris.data)# print(data_standard,data_standard)#Min-Maxfrom sklearn.preprocessing import MinM…

PAT(甲级)2021年春季考试 7-1 Arithmetic Progression of Primes

思路&#xff1a;用筛除法打素数表(与之相对的是枚举加逐个判断)是降低时间复杂度的第一个点&#xff0c;第二个点是运用上数学技巧&#xff0c;给定了等差数列的范围(2-MAX)&#xff0c;给定了个数&#xff0c;那么最大的等差是可以求出的。循环的第一层从最大等差开始&#x…

hadoop中HBase子项目入门讲解

HBase 是Hadoop的一个子项目,HBase采用了Google BigTable的稀疏的,面向列的数据库实现方式的理论,建立在hadoop的hdfs上,一方面里用了hdfs的高可靠性和可伸缩行,另外一方面里用 了BigTable的高效数据组织形式.可以说HBase为海量数据的real-time相应提供了很好的一个开源解决方案…

C++/C union使用记一下锅

//首先&#xff0c;学习编程一定要记得加几个群或者加几个讨论组&#xff0c;因为这样你才能不断地进步还有吵架/滑稽 记一下 关于使用union结构体时遇到的一些坑 To zero-initialize an object of type T means: — if T is a scalar type (3.9), the object is set to the va…

推荐60+ Flex开发参考网站

推荐60 Flex开发参考网站 下面是一些好的Flex开发的网站或者Flex资源&#xff0c;如果你使用Flex开发&#xff0c;可以参考一下。 网上找的&#xff0c;可以参考参考&#xff01;呵呵 新手入门参考: Adobe Flex 3 - adobe.comAdobe Flex Sample Applications - adobe.comVideo …

PAT(甲级)2020年秋季考试 7-4 Professional Ability Test

解题思路&#xff1a; 1.用拓扑排序判断给定的图是否是有向无环图(DAG) 在这个过程当中&#xff0c;对于入度为0的结点&#xff0c;在布尔数组中标记是初始结点 通过入队的结点个数是否等于总个数判断是不是DAG 注意&#xff1a;虽然有队列&#xff0c;但是不需要inq[]数组…

TestNG:org.openqa.selenium.os.UnixProcess$SeleniumWatchDog错误

在TestNG运行自动化测试用例的时候&#xff0c;浏览器FireFox正确打开&#xff0c;可是在测试用例运行完成后&#xff0c;我调用的是webdriver.quit()关闭程序的&#xff0c;结果却报以下错误&#xff1a; Sep 25, 2014 4:19:32 PM org.openqa.selenium.os.UnixProcess$Seleniu…

项目经理修炼手册 2.1.2 项目经理的基本功

具备以上素质的人&#xff0c;大体上可以算是具有基本的程序员素质了&#xff0c;但是想从程序员成为项目经理&#xff0c;必然还需要有一点进步&#xff0c;那额外的这些素质都有哪些呢&#xff1f; 曾经有人力资源的朋友问我要人&#xff0c;我介绍了几个技术上很不错的人&am…

CSS3动画过渡的jquery动态弹出框插件

版权声明&#xff1a;本文为博主原创文章&#xff0c;未经博主允许不得转载。 https://blog.csdn.net/w178191520/article/details/84111711 在线演示 本地下载

PAT(甲级)2021年春季考试 7-4 Recycling of Shared Bicycles

解题思路&#xff1a; 先用Floyd算法求出全员最短路径矩阵。 然后使用DFS进行遍历&#xff0c;遍历的原则是就近贪心&#xff0c;对于每一个点先遍历离他最近的未访问点。 记录访问点的个数&#xff0c;同时用数组存放已访问点&#xff0c;如果访问点的个数不等于输入点数1(…

JAVA抽象类和接口的区别【附经典分析用例Door】

这篇文章对抽象类和接口说的很详细&#xff0c;希望对大家有所帮助.  abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制&#xff0c;正是由于这两种机制的存在&#xff0c;才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类…