为什么我们的服务器和应用程序需要不同的CPU架构?小型/大型机和混合核心?
我只是想知道除了 INTEL 和 INTEL 之外还有哪些其他可用的 CPU 架构。 AMD。因此,在 Wikipedia 上找到了 CPU 架构列表。
它将著名的 CPU 架构分为以下几类。
- 嵌入式CPU架构
- 微型计算机CPU架构
- 工作站/服务器CPU架构
- 小型/大型机CPU架构
- 混合核CPU架构
我正在分析它们的用途并且没有什么疑问。以微型计算机CPU(PC)架构为参考,并与其他架构进行比较,我们有:
嵌入式CPU架构:
- 它们是一个全新的世界。
- 嵌入式系统小且复杂。主要是实时完成非常具体的任务低功耗,所以我们不需要那么多&微型计算机CPU(典型的PC)中可以使用如此宽的寄存器。换句话说,我们确实需要一个新的小&微型建筑。因此,新的架构和新指令RISC。
- 上述这一点也阐明了为什么我们需要一个单独的操作系统(RTOS)。
工作站/服务器CPU架构
- 我不知道什么是工作站。有人澄清有关工作站的问题。
- 作为服务器。它专用于运行特定的软件(服务器软件,如httpd、mysql等)。即使其他进程运行,我们也需要给予服务器进程优先级,因此需要新的调度方案,因此我们需要与通用操作系统不同的操作系统。如果您对服务器操作系统的需求还有更多观点请提出。
- 但我不明白为什么我们需要新的 CPU 架构。为什么微机CPU架构不能完成这项工作?有人可以澄清一下吗?
小型/大型机 CPU 架构
- 我再次不知道这些是什么?小型机或大型机的用途是什么?我只知道它们很大并且占据了整个地板。但我从未读过他们试图解决的一些现实世界问题。如果有人从事其中一项工作。分享您的知识。
- 有人可以澄清其目的吗?为什么微机CPU架构不适合它呢?
- 是否也有一种新的操作系统可以做到这一点?为什么?
混合核心 CPU 架构
- 从未听说过这些。
如果可能,请将您的答案保留为以下格式:
XYZ CPU 架构
- XYZ 的用途
- 需要新的架构。为什么当前的微型计算机 CPU 不能 建筑工作?它们的频率可达 3GHZ 和 3GHz。 最多有 8 个核心。
- 需要新的操作系统为什么我们需要一种新的操作系统 这种架构的系统?
编辑:
伙计们,这不是作业问题。我无法做任何事让你们相信。我不知道问题是否不清楚或其他什么,但我只对具体的技术细节感兴趣。
让我用另一种方式来阐述这个问题的一部分。您正在接受面试,如果面试官问您“告诉我,微型计算机处理器速度快且功能强大,我们的 PC 操作系统也很好。为什么我们需要像 SPARC、Itanium 这样的不同架构以及像 Windows 这样的不同操作系统”服务器的服务器?”。你会回答什么?我希望我的观点得到了。
I was just wondering what other CPU architectures are available other than INTEL & AMD. So, found List of CPU architectures on Wikipedia.
It categorizes notable CPU architectures into following categories.
- Embedded CPU architectures
- Microcomputer CPU architectures
- Workstation/Server CPU architectures
- Mini/Mainframe CPU architectures
- Mixed core CPU architectures
I was analyzing their purposes and have few doubts. Taking Microcomputer CPU (PC) architecture as reference and comparing it to others we have:
Embedded CPU architecture:
- They are a completely new world.
- Embedded systems are small & do very specific task mostly real time & low power consuming so we do not need so many & such wide registers available in a microcomputer CPU (typical PC). In other words we do need a new small & tiny architecture. Hence new architecture & new instruction RISC.
- The above point also clarifies why do we need a separate operating system (RTOS).
Workstation/Server CPU architectures
- I don't know what is a workstation. Someone clarify regarding the workstation.
- As of the server. It is dedicated to run a specific software (server software like httpd, mysql etc.). Even if other processes run we need to give server process priority therefore there is a need for new scheduling scheme and thus we need operating system different than general purpose one. If you have any more points for the need of server OS please mention.
- But I don't get why do we need a new CPU Architecture. Why cant Microcomputer CPU architecture do the job. Can someone please clarify?
Mini/Mainframe CPU architectures
- Again I don't know what are these & what miniframes or mainframes used for? I just know they are very big and occupy complete floor. But I never read about some real world problems they are trying to solve. If any one working on one of these. Share your knowledge.
- Can some one clarify its purpose & why is it that microcomputer CPU archicture not suitable for it?
- Is there a new kind of operating system for this too? Why?
Mixed core CPU architectures
- Never heard of these.
If possible please keep your answer in this format:
XYZ CPU architectures
- Purpose of XYZ
- Need for a new architecture. why can't current microcomputer CPU
architecture work? They go upto 3GHZ &
have upto 8 cores.- Need for a new Operating System Why do we need a new kind of operating
system for this kind of archictures?
EDIT:
Guys, this is not a homework problem. I can't do anything to make you guys believe. I don't know if the question is not clear or something else but I'm only interested in just specific technical details.
Let me put a part of this question in another way. You are in an interview and if the interviewer asks you "tell me, Microcomputer processors are fast & a lot capable and our PC operating systems are good. Why do we need a different architecture like SPARC, Itanium and need a different OS like Windows Server for servers?". What would you answer? I hope got my point.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
工作站现在几乎是绝迹的计算机形式。基本上,它们曾经是看起来像台式机的高端计算机,但有一些重要的区别,例如 RISC 处理器、SCSI 驱动器而不是 IDE 以及运行 UNIX 或(后来的)NT 系列 Windows 操作系统。 Mac Pro 可以被视为工作站的当前形式。
大型机是大型计算机(尽管它们不一定占据整个楼层)。它们提供非常高的可用性(大型机的大部分部件,包括处理器和内存,可以在系统不停机的情况下进行更换)和向后兼容性(许多现代大型机可以运行为 70 年代大型机编写的未经修改的软件)。
x86架构最大的优势就是兼容x86架构。 CISC 通常被认为已经过时,这就是为什么大多数现代架构都是基于 RISC 的。即使是新的英特尔和AMD 处理器本质上是 RISC。
过去,家用电脑与“专业”硬件之间的差距比今天大得多,因此“微型计算机”硬件不足以满足服务器的需求。当大多数 RISC“服务器”架构(SPARC、PowerPC、MIPS、Alpha)创建时,大多数微计算机芯片仍然是 16 位。第一个 64 位 PC 芯片 (AMD Opteron) 比 MIPS R4000 晚 10 多年才上市。操作系统也是如此:PC 操作系统(DOS 和非 NT Windows)根本不适合服务器。
在嵌入式系统中,x86 芯片的能效根本不够。 ARM 处理器使用更少的能源提供相当的处理能力。
Workstations are now almost-extinct form of computers. Basically they used to be high-end computers looking like desktops, but with some important differences, such as RISC processors, SCSI drives instead of IDE and running UNIX or (later) NT line of Windows operating systems. Mac Pro can be seen as a present form of workstation.
Mainframes are big (though they do not necessarily occupy whole floor) computers. They provide very high availibility (most parts of a mainframe, including processors and memory, can be replaced without system going down) and backwards compatibility (many modern mainframes can run unmodified software written for '70 mainframes).
The biggest advantage of x86 architecture is compatibility with x86 architecture. CISC is usually considered obsolete, that's why most modern architectures are RISC based. Even new Intel & AMD processors are RISC under the hood.
In the past, gap between home computers and "professional" hardware was much bigger than today, so "microcomputer" hardware was inadequate for servers. When most of RISC "server" architectures (SPARC, PowerPC, MIPS, Alpha) were created, most microcomputer chips were still 16-bit. First 64 bit PC chip (AMD Opteron) shipped over 10 years after MIPS R4000. The same was with operating systems: PC operating systems (DOS and non-NT Windows) simply were inadequate for servers.
In embedded systems, x86 chips are simply not enough power efficient. ARM processors provide comparable processing power using much less energy.
考虑一下二十年前的世界可能会有所帮助。
当时,设计和制造世界一流的 CPU 并不那么昂贵,而且有更多的公司拥有自己的 CPU。此后发生的事情很大程度上可以用 CPU 设计和晶圆厂的价格上涨来解释,这意味着大量销售的产品比没有大量销售的产品生存得更好。
有大型机,大部分来自 IBM。这些专门致力于高吞吐量和可靠性。您不会对它们做任何花哨的事情,使用低成本机器更具成本效益,但它们过去和现在都非常适合用 COBOL 编程的大批量业务类型交易。银行大量使用这些。这些是专门的系统。此外,它们运行的程序很早以前就已经存在,因此在架构和操作系统方面与早期 IBM 360 的兼容性比与 x86 的兼容性要重要得多。
当时有小型计算机,它们比大型机小,通常更容易使用,而且比任何个人电脑都大。它们有自己的 CPU 和操作系统。我相信他们当时就快死了,现在他们大多已经死了。首屈一指的小型计算机公司数字设备公司最终被个人电脑制造商康柏收购。他们往往有特殊的操作系统。
还有工作站,主要用作需要大量计算能力的人的个人计算机。他们的 CPU 设计比一般英特尔的要简洁得多,这意味着他们的运行速度要快得多。另一种形式的工作站是 Lisp Machine,至少在 80 年代末由 Symbolics 和 Texas Instruments 推出。这些 CPU 旨在高效运行 Lisp。其中一些架构仍然存在,但随着时间的推移,维持这些架构的成本效益变得越来越低。除了 Lisp 机器之外,这些机器往往运行 Unix 版本。
当时标准的 IBM 兼容个人计算机并不是那么强大,而且 Intel 架构的复杂性大大阻碍了它的发展。这已经改变了。当时的 Macintosh 运行在 Motorola 的 680x0 架构上,该架构在计算能力方面具有显着的优势。后来,他们转向了 IBM 工作站首创的 PowerPC 架构。
我们现在所知道的嵌入式 CPU 可以追溯到 20 世纪 70 年代末。它们的特点是完整的低端系统,芯片数量少,最好使用很少的功率。 Intel 8080 刚推出时,本质上是一个三芯片 CPU,需要额外的 ROM 和 RAM 芯片。 8035 是一款带有 CPU、ROM 和 RAM 的芯片,功能相对较弱,但适用于多种应用。
超级计算机拥有手工设计的 CPU,并以尽可能简化并行计算以及针对(大部分)浮点乘法优化 CPU 而闻名。
从那时起,大型机非常成功地占据了自己的利基市场,而小型机和工作站则受到严重挤压。一些工作站 CPU 仍然存在,部分原因是历史原因。 Macintoshes 最终从 PowerPC 转向了 Intel,尽管 IIRC PowerPC 仍然存在于 Xbox 360 和一些 IBM 机器中。保持良好操作系统最新的成本不断增加,现代非大型机系统往往运行 Microsoft Windows 或 Linux。
嵌入式计算机也变得更好。仍然有小而便宜的芯片,但 ARM 架构变得越来越重要。它存在于一些早期的上网本中,也存在于 iPhone、iPad 和许多类似设备中。它具有功能强大且功耗低的优点,非常适合便携式设备。
您将在常见系统上遇到的另一种 CPU 是 GPU,它旨在执行高速专用并行处理。有些软件平台允许对它们进行编程,利用它们的优势来做其他事情。
桌面版和服务器版操作系统之间的区别不再是根本性的。通常,两者都具有相同的底层操作系统,但接口级别会有很大不同。台式机或笔记本电脑被设计为可供一名用户轻松使用,而服务器则需要由一个同时管理大量其他服务器的人来管理。
我将尝试混合核心,但我可能不准确(欢迎更正)。索尼 Playstation 3 有一个奇怪的处理器,有不同的内核专门用于不同的用途。从理论上讲,这是非常有效的。更实际的是,对混合核心系统进行编程非常困难,而且它们相当专业。我不认为这个概念有特别光明的前景,但它目前对索尼的销售有好处。
It will probably help to consider what the world was like twenty years ago.
Back then, it wasn't as expensive to design and build world-class CPUs, and so many more companies had their own. What happened since is largely explainable by the increasing price of CPU design and fabs, which means that that which sold in very large quantities survived a lot better than that which didn't.
There were mainframes, mostly from IBM. These specialized in high throughput and reliability. You wouldn't do anything fancy with them, it being much more cost-effective to use lower-cost machines, but they were, and are, great for high-volume business-type transactions of the sort programmed in COBOL. Banks use a lot of these. These are specialized systems. Also, they run programs from way back, so compatibility with early IBM 360s, in architecture and OS, is much more important than compatibility with x86.
Back then, there were minicomputers, which were smaller than mainframes, generally easier to use, and larger than anything personal. These had their own CPUs and operating systems. I believe they were dying at the time, and they're mostly dead now. The premier minicomputer company, Digital Equipment Corporation, was eventually bought by Compaq, a PC maker. They tended to have special OSes.
There were also workstations, which were primarily intended as personal computers for people who needed a lot of computational power. They had considerably cleaner designed CPUs than Intel's in general, and at that time it meant they could run a lot faster. Another form of workstation was the Lisp Machine, available at least in the late 80s from Symbolics and Texas Instruments. These were CPUs designed to run Lisp efficiently. Some of these architectures remain, but as time went on it became much less cost-effective to keep these up. With the exception of Lisp machines, these tended to run versions of Unix.
The standard IBM-compatible personal computer of the time wasn't all that powerful, and the complexity of the Intel architecture held it back considerably. This has changed. The Macintoshes of the time ran on Motorola's 680x0 architectures, which offered significant advantages in computational power. Later, they moved to the PowerPC architecture pioneered by IBM workstations.
Embedded CPUs, as we know them now, date from the late 1970s. They were characterized by being complete low-end systems with a low chip count, preferably using little power. The Intel 8080, when it came out, was essentially a three-chip CPU, and required additional chips for ROM and RAM. The 8035 was one chip with a CPU, ROM, and RAM on board, correspondingly less powerful, but suitable for a great many applications.
Supercomputers had hand-designed CPUs, and were notable for making parallel computing as easy as possible as well as the optimization of the CPU for (mostly) floating-point multiplication.
Since then, mainframes have stayed in their niche, very successfully, and minicomputer and workstations have been squeezed badly. Some workstation CPUs stay around, partly for historical reasons. Macintoshes eventually moved from PowerPC to Intel, although IIRC the PowerPC lives on in Xbox 360 and some IBM machines. The expense of keeping a good OS up to date grew, and modern non-mainframe systems tend to run either Microsoft Windows or Linux.
Embedded computers have also gotten better. There's still small and cheap chips, but the ARM architecture has become increasingly important. It was in some early netbooks, and is in the iPhone, iPad, and many comparable devices. It has the virtue of being reasonably powerful with low power consumption, which makes it very well suited for portable devices.
The other sort of CPU you'll run into on common systems is the GPU, which is designed to do high-speed specialized parallel processing. There are software platforms to allow programming those to do other things, taking advantage of their strengths.
The difference between desktop and server versions of operating systems is no longer fundamental. Usually, both will have the same underlying OS, but the interface level will be far different. A desktop or laptop is designed to be easily usable by one user, while a server needs to be administered by one person who's also administering a whole lot of other servers.
I'll take a stab at mixed core, but I might not be accurate (corrections welcome). The Sony Playstation 3 has a strange processor, with different cores specialized for different purposes. Theoretically, this is very efficient. More practically, it's very hard to program a mixed-core system, and they're rather specialized. I don't think this concept has a particularly bright future, but it's doing nice things for Sony sales in the present.
工作站曾经是一类系统,供单个(或交替)用户用于执行比 PC 提供的计算能力更强的任务。它们基本上在 20 世纪 90 年代消亡,因为研发规模经济使得标准 PC 硬件能够以低得多的价格提供相同(并最终更高)的性能。
工作站由 Sun、SGI 和 HP 等公司制造。他们通常运行专有的 Unix 变体,并且通常还拥有专门的硬件。典型应用是科学计算、CAD 和高端图形。
“工作站架构”的特点是为单用户应用程序提供高性能,而价格是次要考虑因素。
Workstations used to be a class of systems intended to be used by single (or alternating) users for tasks that demanded more computing power than a PC offered. They basically died out in the 1990s as economics of scale in R&D allowed standard PC hardware to offer the same (and eventually more) performance for a much lower price.
Workstations were made by companies such as Sun, SGI and HP. They usually ran a proprietary Unix variant and often had specialized hardware as well. Typical applications were scientific computing, CAD and high-end graphics.
"Workstation architectures" were characterized by the goal to deliver high performance for single-user applications with price as a very secondary consideration.
嵌入式CPU架构的一项补充是:它们通常必须比主流处理器更便宜,这样就不会显着提高产品的寿命。
混合核心 CPU 架构
它们通常用于需要高吞吐量、速度和/或较低功耗的地方 - 嵌入式应用、DSP、密码学、游戏、高性能计算。
除了通用 (GP) 核心之外,混合核心架构还提供一个或多个适合特定问题域的专用核心。专用内核可用作应用程序中被视为瓶颈的特定部分的加速器。尽管可以通过添加更多 GP 内核来实现相同的性能,但这可能是不切实际的,因为所使用的技术、芯片尺寸、功率限制、散热或可编程性 - 专用内核可以做一件事,或者至少做几件事,更快、更高效。比 GP 内核更高效。它们存在的原因与显卡在 GPU 中使用不同架构的原因相同。
主流操作系统是针对主流CPU编写和优化的。它们是针对主流处理器架构编译的。此外,专用内核通常不够通用,无法运行其操作系统。因此,我们并不明确需要新的操作系统,只需进行修改以允许系统识别和使用专用内核 - 通过库或驱动程序。使用专用核心需要部分重新编译,以便可执行代码针对专用核心。
一些注意事项:
主流芯片实际上是混合核心。它们有 MMX、SSE、SSE2、SSE3 指令、浮点指令,有时还有加密扩展。这实际上使它们成为“混合核心”架构。然而,它们非常受欢迎,以至于被归入微型计算机处理器类别。想想 AMD 的 Fusion 和英特尔 Larrabbee。
x86 之所以如此受欢迎,是因为有大量的研究、努力和投资来为它们制作好的工具(编译器、调试器等)。此外,大多数程序都是闭源代码并为 x86 编译,因此您无法在任何其他体系结构上运行它们。最后,很多代码都有手写的优化或假设代码将在 x86 上编译和执行。这需要重写部分应用程序才能针对不同的体系结构进行编译。
采用不同架构的另一个重要原因是不同子系统的控制和紧密集成。 IBM 拥有自己的 CPU (PowerPC)、操作系统 (AIX) 和库,提供经过优化调整的软件包,一旦您购买就很难放弃。 Sun(现在的 Oracle)的 SPARC 和 Solaris 以及几年前的 HP 的 HP-RISC 和 HP/UX 也是如此。这并不是邪恶之类的:他们提供了一个完全适合您的应用程序的软件包,并且他们知道并且可以在出现问题时轻松重现,因为他们熟悉系统的各个方面,包括硬件和软件。
One addition for Embedded CPU architecture: they have to be usually cheaper than mainstream processors, so that they do not raise the product's life considerably.
Mixed core CPU architectures
They are usually used where there is a need for high throughput, speed and/or lower power requirements - embedded applications, DSPs, cryptography, gaming, high performance computing.
Mixed core architectures offer one or many specialized cores that fit a specific problem domain in addition to the General Purpose (GP) core. The specialized cores can be used as accelerators for a specific part of the application that is considered to be the bottleneck. Although one can achieve the same performance by adding more GP cores, this may be impractical because of technology used, die size, power constraints, dissipated heat or programmability - the specialized cores do one thing, or at least a couple of things, faster and more efficient than a GP core. They exist for the same reasons as why graphics cards use a different architecture in their GPUs.
Mainstream OSes are written and optimized for mainstream CPUs. They are compiled targeting a mainstream processor architecture. Moreover, the specialized cores are usually not generic enough to run their OS. So we don't explicitly need a new OS, just modifications to allow the system to recognize and use the specialized cores - either through a library or through a driver. Using the specialized core needs partial recompilation so that the executable code targets the specialized core.
Some notes:
Mainstream chips are effectively mixed-cores. They have MMX, SSE, SSE2, SSE3 instructions, floating point instructions and some times cryptographic extensions. This effectively makes them a "mixed-core" architecture. However, they are so popular that are included in the microcomputer processor category. Think of AMD's Fusion and Intel Larrabbee.
x86 is so popular because there is a lot of research, effort and investment to make good tools (compilers, debuggers etc) for them. Moreover, the majority of the programs are closed source and compiled for x86, so you cannot run them on any other architecture. Finally, a lot of code has hand-written optimizations or assumptions in the code that it will be compiled and executed on an x86. This would require a partial application rewrite to compile for a different architecture.
Another good reason for different architectures is control and tight integration of different subsystems. IBM has their own CPUs (PowerPC), OS (AIX) and libraries, offering a optimally tuned package that is difficult to go away from once you have bought it. Same goes for Sun (now Oracle) with the SPARC and Solaris and a few years back with HP with HP-RISC and HP/UX. It is not evil or anything like that: they offer a package that fits your application exactly and they know and can reproduce easily if something goes wrong because they are familiar with all aspects of the system, both hardware and software.
看来您的问题和目标确实是为了了解计算机体系结构的历史。如果这是真的,那么你需要这本书。它应该可以帮助您了解您正在寻找的内容:
http://www. amazon.com/Computer-Architecture-Concepts-Evolution-2/dp/0201105578
布鲁克斯博士介绍了计算机体系结构的历史、新想法的最初出现,并追踪了这些想法随着时间的推移通过不同机器的发展。
It seems like your question and goal is really to understand the history of Computer Architecture. If that is true then you need this book. It should help you to gain the understanding that you are looking for:
http://www.amazon.com/Computer-Architecture-Concepts-Evolution-2/dp/0201105578
Dr. Brooks covers the history of computer architecture, the initial appearance of new ideas and traces the development of these ideas through different machines over time.
大型机
硬件架构示例
气象主机处理来自不同状态的传感器的实时信息。
操作系统架构示例
假设绘制某些内容的正常命令是:DRAW“text”。
这是在普通电脑上。现在,假设您有很多屏幕,并且想要在每个屏幕上绘制相同的内容,则使用这台 PC,您必须为每个屏幕调用 DRAW“文本”。
但是,您可能只是使用命令“DRAWS”制作一些硬件,该命令会自动在每个屏幕上绘制相同的文本: DRAWS“text”
Mainframe
HW Architecture Example
A weather mainframe processing real-time information from sensors in different states.
OS Architecture Example
Let's say the normal command to draw something is: DRAW "text".
That's on a normal PC. Now, let's say you have a lot of screens and want to draw the same thing on each, with this PC you will have to call DRAW "text" for each.
However, you might just make some hardware with a command "DRAWS" which automatically draws the same text on each screen: DRAWS "text"
简而言之:任何设计都必须满足一些要求。在满足任何复杂的要求时,都必须做出妥协,满足要求 X 到第 n 级可能会导致无法满足要求 Y。因此,无论您是在谈论 CPU 还是洗衣机,都会有各种各样的情况设计以满足各种要求。
随着时间的推移,技术和需求的发展使情况变得更加复杂,但并没有本质上的改变。
In a nutshell: any design must satisfy some requirements. In satisfying any complex set of requirements there will have to be compromises made, satisfying requirement X to the n-th degree may make it impossible to satisfy requirement Y. So, whether you are talking about CPUs or washing-machines there will be variety of designs to meet variety of requirements.
The situation is made more complex, but not essentially changed, by the evolution of both technologies and of requirements over time.
例如,如果唯一的车辆是自动变速箱丰田皮卡(旧的小型车辆而不是较新的全尺寸车辆),您能否解决世界上所有的运输问题?
为什么你还需要别的东西?
好吧,不是每个人都能开棍子,不是每个人都适合开丰田车(我认为高度大于宽度)。你无法承载家庭。您无法拖运大型物体,当然效率不高。如何将卡车送到经销商处出售?一次开一辆车吗?
如果我们在电视遥控器中使用服务器级处理器,我们将需要延长线和冷却风扇,或者需要在每次按下按钮时更换电池并等待其首先启动。
RTose和操作系统,与上面的答案相同。您不会在低功耗微控制器中使用 RTO,通常情况下不会,您通常会使用数百字节的 ROM 和数十字节的 RAM。没有空间容纳臃肿软件。专门构建的软件基于专门构建的硬件。
看看现在发生的 ARM 与英特尔的竞争,英特尔在硬件设计方面很糟糕,他们的成功纯粹是在会议室和电信方面,而不是在主板上的硬件方面。您可以使用替代供应商提供的替代指令集获得相同的性能,而初始成本和运营成本只需一小部分。为什么选择一种古老的解决方案?
很少有操作系统是可靠的,编译器和硬件也是如此。一些软件和硬件是为了性能或可靠性而设计的,但不一定是为了用户友好性。我不希望起落架控制杆导致飞行员必须伸手去拿鼠标并检查“您确定要部署起落架窗口吗”上的“确定”按钮,然后看着沙漏在思考时旋转是否做。
出于同样的原因,您需要一辆皮卡车来完成某些工作,而需要一辆牵引拖车来完成其他工作,您需要一类用于家庭桌面的机器(和软件),另一类用于中小型企业服务器,另一类用于大型公司。你不能仅仅根据工作的需要将皮卡变得更小或无限大,有时你需要更多的车轮、是否有外壳、更多或更少的座椅、动力输出装置、液压系统等,这取决于它的设计任务。
如果我们停在运行 CP/M 的 8 位处理器上,我们会在哪里?它解决了世界上所有的问题,为什么还需要开发替代方案呢? 100% 的创新、成本节省、性能提升都是质疑当前解决方案并尝试不同方法的结果。
一种尺寸适合所有人,但并不适合任何人。
Could you for example solve all the transportation problems in the world if the only vehicle was a automatic transmission toyota pickup (the old small ones not the newer full size)?
Why would you ever need something else?
Well not everyone can drive a stick, not everyone fits in a toyota (I am thinking height more than width). You cant carry the family. You cannot haul large objects, certainly not efficiently. How do you get the trucks to the dealer to sell? Drive them one at a time?
If we used a server class processor in our television remote control we would need an extension cord and a cooling fan, or would need to replace the batteries on every button press and wait for it to boot first.
Rtoses and operating systems, same answer as above. You dont use an rtos in a low powered microcontroller, not normally, you often have rom measured in hundreds of bytes and ram measured in tens of bytes. No room for bloatware. Purpose built software on purpose built hardware.
Look at the ARM vs Intel thing going on now, Intel is horrible at hardware design, their success is purely in conference rooms and telecons not in hardware on a motherboard. You can get the same performance using alternate instructions sets from alternate vendors at a fraction of the initial and operating cost. Why settle on one ancient solution?
Few operating systems are reliable, same with compilers and hardware for that matter. Some software and hardware is designed for performance or reliability but not necessarily for user friendliness. I dont want the landing gear lever to cause the pilot to have to reach over to a mouse and check the okay button on the "are you sure you want to deploy the landing gear window", and then watch the hourglass spin while it thinks about whether to do it or not.
For the same reason you need a pickup truck for some jobs and a tractor-trailer for others, you need one class of machine (and software) for home desktop, another for small-medium business servers and another for large corporations. You cannot just make a pickup smaller and infinitely bigger depending on the job, you need more wheels sometimes, enclosures or not, more or fewer seats, power takeoffs, hydraulics or not, etc depending on the task it is designed for.
Where would we be if we had stopped at the 8 bit processor running CP/M? It solves all the worlds problems why would ever need to develop an alternative? 100% of the innovations, cost savings, performance increases are the result of questioning the current solution and trying something different.
One size fits all fits no one well.