广告

开源软件真的可靠吗?

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

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

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

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

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

ANyednc

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

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

ANyednc

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

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

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

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

责编:Demi
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
  • 高通推断:苹果成功自研5G基带芯片,明年见 高通CEO兼总裁克里斯蒂亚诺·阿蒙表示,苹果与高通至今尚未讨论过2024年的5G基带芯片订单一事,他推测这可能代表苹果打算在2024年推出的iPhone 16系列中,开始采用自家研发的5G基带芯片。
  • 谷歌支持LTE的Pixel Watch BoM 报告:成本123美元,三星占 据EDN电子技术设计报道,根据Counterpoint的材料清单报告显示,支持 LTE 的 Pixel Watch 的制造成本为123美元。此版本的Pixel Watch发售时售价为 399 美元,成本价格比零售价低约276 美元。
  • 晶圆厂联手封测厂,为供应链赋予新意 在半导体产业日益关注封装技术创新,以超越芯片微缩的困境之际,晶圆厂联手封测厂的合作伙伴关系将支撑起下一代封装技术,并彰显封装技术在半导体供应链的重要意义...
  • 称可超越ChatGPT,微软推出新人工智能模型——Kosmos-1 微软推出了 Kosmos-1,据称它是一种多模式大型语言模型 (MLLM),不仅可以对语言提示做出反应,还可以对视觉线索做出反应,可用于一系列任务,包括图像说明、视觉问题回答等等。
  • 风禾尽起!忆芯科技高端企业级主控芯片及方案全球首发! 忆芯科技在国产高端企业级SSD赛道上,再迎来新里程碑——“风禾尽起  忆芯科技高端企业级芯片及方案发布会”在合肥天鹅湖大酒店隆重举行,面向全球正式首发全新一代高端企业级SSD主控芯片及方案。
  • MWC 2023落下帷幕,盘点国产厂商的那些亮眼表现 MWC 2023(世界移动通信大会2023)于2月27日在巴塞罗那正式向全球移动产业伙伴开启,大会也于3月2日正式落下帷幕。展会持续五天,根据官方数据统计,2023年MWC有2000多家全球厂商参展,中国有以OPPO、荣耀为代表的共计28个国产厂商参展。本次展会,各大厂商纷纷拿出自己的看家本领,可谓是亮点多多,今天就带大家一起看看展会上国产厂商展现的那些亮眼技术吧~
  • 维持ChatGPT运行将需要超过3万块Nvidia显卡 据TrendForce的最新预测,人工智能(AI)将成为Nvidia的最大收入来源之一。该研究公司估计,OpenAI的ChatGPT最终将需要超过3万块Nvidia显卡的算力以维持运行。
  • IEC 61000-4-3标准的步进频率 本文重点在于讨论如何使用更简略的步骤进行IEC 61000-4-3标准的EMI/EMC测试,以加快产品开发时间...
  • 小米预研固态电池技术前景诱人,能量密度突破1000Wh/L 3月1日,小米又宣布预研固态电池技术,通过将电解液替换为固态电解质,不仅能量密度突破1000Wh/L,更大幅提升低温放电性能和安全性,称“有望一举解决手机电池三大痛点”。
  • Win11端Phone Link添加新支持,iPhone能在PC端接打电话 3月1日,微软宣布,为Win11平台上的Phone Link应用程序添加对iPhone的支持。用户通过该应用程序连接PC和iPhone之后,可以在PC端拨打和接听电话、发送和接收短信、直接在PC上查看iPhone的通知。预览版要求Phone Link应用程序版本1.23012.169.0或更高版本。
  • 用于GaN HEMT的超快速分立式短路保护 GaN HEMT的保护电路必须比硅基MOSFET中使用的传统短路和过流保护方法更快。
  • 【电驱变革深探】: 从测试角度看800V超充技术下的电驱 市场调研数据显示,超过80%的用户对电动汽车的充电速度和续航里程表示不满,虽然新能源汽车市场在近几年飞速变化,但距离满足消费者心理预期的更高使用需求,尚有较大提升空间。预测数据显示,到2025年,800V SiC的市场占比将达到15%左右;不过在电动汽车全球发展提速的大趋势下,这一预测节点也许会提前到来。
广告
热门推荐
广告
广告
EE直播间
在线研讨会
广告
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了