广告

开源软件真的可靠吗?

2022-07-28 13:51:26 Jacob Beningo,嵌入式软件顾问 阅读:
乍看之下,采用开源软件似乎是个不错的办法,但归根究底,开源软件有几个特性可能会使其变得“邪恶”...

开发软件——尤其是嵌入式软件,是人类最复杂且最耗成本的活动之一。因此,许多团队希望尽量藉由重复使用软件(包括免费的开源软件)来降低复杂度和成本。根据《2019年嵌入式市场调查》(2019 Embedded Market Survey)发现,24%的受访者重复使用了开放来源(open-source)程序代码。乍看之下,采用开源软件似乎是个不错的办法,但归根究底,开源软件有几个特性可能会使其变得“邪恶”。8z2ednc

首先,每个开源程序代码库都附带一项软件授权。软件授权要求开发人员们如何使用以及什么情况下不能使用该软件。如今,许多开源项目都使用MIT授权,让该软件几乎已能免费用于任何项目,而且完全不附带任何条件。遗憾的是,并不是所有的程序代码库都能如此。尽管有些软件授权可以不受限制地用于个人项目。然而,如果将该程序代码作为商业用途,任何更改或有时甚至是新的相关程序代码也必须开源。如果开发人员或经理人员等稍微不留意,很可能就必须合法地开放其IP。是不是很邪恶?8z2ednc

其次,“免费”的软件难道不违背资本主义存在的核心吗?我们都推崇发明家、企业家以及成长为业界领导厂商和巨擘的公司。但如果说有想为软件付费的想法可能会让工程师笑掉大牙。为什么我们拒绝为商业软件付费,反而依赖于开源软件?我在许多公司中看到的情形是,推广使用免费的开源软件并不是因为它的质量更好、上市时间更短或客户体验更佳。据我所见,最大的推动力量似乎是企业对利润最大化的贪婪。当公司不愿意支付、捐赠或作出贡献时,为什么却指望每个人都为其软件付出高昂的代价?这不是很邪恶吗?8z2ednc

最后,开源软件通常功能强大,但不一定十分稳健可靠或经过全面测试,甚至不一定适合每一位开发人员想要的使用方式。例如,业界最喜欢的开源工具库是FatFS。FatFS提供了一个由许多微控制器(MCU)供货商整合的易用文件系统,因而可说是让开发人员拥有一个开箱即用的文件系统。然而,选择FatFS却让我觉得痛苦,因为它虽然在功能上非常完善也很有用。但是,如果您开始深入了解,就会发现许多潜在的质量问题。8z2ednc

8z2ednc

图 1:基本 FatFS程序代码分布函数的McCabe循环复杂度范围计数。8z2ednc

例如,如果您分析FatFS的函数复杂度(Cyclomatic Complexity),您会发现函数的复杂度分布如图1所示。整体而言,大多数函数都比较简单,如果进行任何更改后出现bug 或注入bug的可能性较低。但是,它有17个函数的复杂度大于10,其中有5个函数的复杂度甚至大于20!你认为那些是什么功能?开发人员最常使用的那些如表1所示。是不是很邪恶?8z2ednc

8z2ednc

表1:循环复杂度为20或更高的FatFS函数。8z2ednc

那么,开源软件真的邪恶吗?我可能会争辩说不;但是,我想提醒想要冲往GitHub以及尽量利用每一个已知开源软件的团队,请先暂停脚步想一想再小心谨慎地继续前进。因为你永远不知道最终会得到什么,你或你的客户最终也可能会变得更糟。至少请预先安排时间来分析您的开源软件并对其进行测试,以确保它能满足您的需求。只是因为有人免费提供给您并不表示它能够满足您的要求。8z2ednc

您认为呢?开源软件邪恶吗?8z2ednc

(参考原文:Is open-source software evil?,by Jacob Beningo;编译:Susan Hong)8z2ednc

责编:Demi
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
  • 商务部暂停天然砂对台湾地区出口,对其半导体制造产业有 据EDN电子技术设计了解,商务部网站8月3日早晨8点发布最新消息,表示将从即日起暂停天然砂对台湾地区出口。不少网友认为暂停天然砂对台湾地区的出口,此举将严重影响台湾的建筑业,实则影响不仅仅如此。台湾地区天然砂进口量的90%以上来自大陆,而台湾芯片占台湾2021年出口额的34.8%。网友称商务部暂停天然砂对台湾地区出口是捏到了台湾半导体制造业的七寸。
  • 华盛顿大学首创用人体热能为可穿戴电子设备供电 从健康和健身追踪器到虚拟现实设备,可穿戴电子产品已成为我们日常生活的一部分,但找到持续为这些设备供电的方法是一项挑战。华盛顿大学的研究人员开发了一种创新的解决方案:首创的柔性、可穿戴热电设备,可将体热转化为电能。
  • 深圳允许完全自动驾驶车辆上路,主驾无需坐人 据EDN电子技术设计引援央视财经报道,从8月1日开始,《深圳经济特区智能网联汽车管理条例》正式实施,智能网联汽车列入国家汽车产品目录或者深圳市智能网联汽车产品目录,这也让深圳成为了国内首个允许L3级别自动驾驶车辆合法上路的城市。
  • 理想ONE高速起火烧成光架,其1.2T三缸增程器曾被指隐藏 近期,网络平台上发布了一段理想ONE在行驶过程中,车辆出现起火的视频内容。现场拍摄的灭火后图片显示,该轿车过火后仅剩骨架,车辆前部增程器位置受损严重,车辆尾门已经在过火后从车身主体脱落。此前,曾有国内汽车媒体对一台行驶了10万公里的理想ONE的东安1.2T三缸增程发动机进行拆解,被指隐藏暗病。
  • 上海微系统所使用石墨烯纳米带研制出世界上最小尺寸的 非易失性相变随机存取存储器(PCRAM)被认为是大数据时代新兴海量存储的有希望的候选者之一。然而,相对较高的编程能量阻碍了 PCRAM 中功耗的进一步降低。利用石墨烯的窄边接触可以有效降低每个电池中相变材料的活性体积,从而实现低功耗运行。
  • 可解决工业自动化和IIoT挑战的MCU 工业自动化和工业物联网(IIoT)设计人员的性能要求不断变化。就MCU而言,他们希望获得更快的处理速度、更多的内存、更好的连接性和更多的安全功能。
  • 我国建成开通5G基站数达185.4万个 工信部近日透露,截至2022年6月底,中国5G基站数达到185.4万个,其中二季度新增基站近30万个,已建成全球规模最大、技术领先的网络基础设施,实现“县县通5G、村村通宽带”。。
  • 苹果发布2022财年第三财季业绩,营收829.59亿美元 Apple 今日公布了 2022 年第三财季的财务业绩。报告显示,苹果公司第三财季公布收入为 829.59亿美元,去年同期为 814 亿美元,同比增长2%;季度净利润为 194 .4亿美元,去年同期为217 亿美元,同比下降10.6%;其中,iPhone带来的营收406.7亿美元,同比增长3%。
  • 工程师开发出可以看到身体内部的贴纸 麻省理工学院的工程师设计了一种贴片,可以产生身体的超声图像。这种邮票大小的设备贴在皮肤上,可以提供 48 小时内脏器官的连续超声成像。
  • 美国参议院批准价值2460亿美元的芯片法案 美国参议院周三通过立法,以超过 750 亿美元支持国内半导体产业。GlobalFoundries、英特尔、三星代工厂、德州仪器、台积电和其他在美国建立半导体制造设施的公司或将受益。
  • 第三代半导体——碳化硅材料之制程与分析 SiC功率电子是加速电动车时代到来的主要动能。以SiC MOSFET取代目前的Si IGBT,不仅能使电力移转时的能源损耗降低80%以上,同时也可让芯片模块尺寸微缩至原本的1/10,达到延长电动车续航里程及缩短充电时间的功效。
  • 俄罗斯要绕过5G直接开发6G!投资300亿卢布够吗? 在全球通信技术竞争上,中国的5G发展速度遥遥领先于其他国家,更多国家开始在6G上较劲儿。今日,“俄罗斯决定绕过5G直接开发6G网络”登上热榜,引起网友热议。
广告
热门推荐
广告
广告
EE直播间
在线研讨会
广告
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了