首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我们今天最简单的操作系统或平台是什么?

我们今天最简单的操作系统或平台是什么?
EN

Software Engineering用户
提问于 2017-05-29 05:29:01
回答 2查看 490关注 0票数 0

在当今时代,我们可以在什么“最简单”的操作系统或平台上进行软件工程?或者,换句话说,操作系统和软件工程平台是否有“最低要求”?

我相信单板Linux电脑并不是太小。我第一次学习软件工程是在20世纪80年代,当时我做了一个3名学生的项目,让一个系统在128 K Macintosh上运行。

另一种方法可能是将活动标记为编程,或者是一些我还没有想到的东西。

如果您认为这个问题太过元或基于意见,请迅速评论.

EN

回答 2

Software Engineering用户

发布于 2017-05-29 09:14:39

在当今时代,我们可以在什么最简单的操作系统或平台上进行软件工程?

None.

软件工程的主要活动之一是概念软件设计,而为软件制作概念并不一定需要一个特定的平台。它可以用铅笔和纸,通过绘制UML图,数据模型或流程图,或仅仅通过写下一个概念的文本形式,不对操作系统和平台作出任何假设。

也许你是在另一种意义上说你的问题,比如

我们可以在什么最简单的操作系统或平台上运行软件工程过程产生的实际程序

但答案是:软件工程可以为“任何能够执行程序的平台”进行,根据您个人对“简单”的定义,选择您认为最“简单”的平台。

公平地说,SE不仅仅是为软件创建概念。例如,除了编码问题外,这个站点将焦点放在系统开发生命周期的所有活动上。但正如@BasileStarynkevitch在他的回答中正确地写道,“小系统”的SE活动通常是通过使用单独的、更大的开发系统和交叉开发工具包来完成的。因此,SE活动,如配置管理、版本控制、测试、QA或编写文档,都可以在标准PC上完成,其中有一个与之匹配的开发工具包。这使得在几乎任何当代目的地平台上进行各种软件工程活动成为可能。

票数 9
EN

Software Engineering用户

发布于 2017-05-29 05:40:34

对于专业的嵌入式系统软件工程和开发,通常的做法是交叉开发和交叉编译.因此,您将开发(即编辑、编译、构建),例如笔记本电脑或台式机(通常运行一些Linux发行版),通常比目标嵌入式系统更强大。

请注意,优化编译器确实需要一些CPU能力(如果您想要整个程序优化或链接时间优化= LTO,例如使用gcc -flto -O2编译并使用GCC链接),则需要更多的CPU资源。而且至少构建大型项目-in C或C++通常是通过几个并发编译作业(通过make -j)完成的,因此有几个核心是有用的。顺便说一句,CPU的能力并不是唯一重要的东西(拥有两个大屏幕和SSD磁盘以及>= 16 Gbytes的内存对开发人员来说是非常有用的)。

为了教学目的,您确实可以在像RaspBerryPi这样小的东西上编译,运行某种类型的Linux (至少如果您不想要LTO)。但我相信你至少需要1GB的内存。在实际的职业生活中,你肯定想要更大的东西(例如,至少一台ITX主板或一台微型计算机),并且花费几百欧元或美元来改善软件开发人员的体验是非常有意义的https://xkcd.com/303/

顺便说一句,一个合格的开发人员的成本要比他的机器的成本高得多:在我职业生涯的初期(1987年),我在办公室的Sun3/160工作站花费了我几年的劳动力,而今天,一个强大的台式机花费了我几天或几周的劳动(对我的雇主来说)。

票数 -1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/349761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档