我之所以问这个问题,是因为我正在调查Haiku操作系统(一个BeOS后裔)。
BeOS操作系统的目标是创建一个能够很好地处理多媒体并且响应能力很强的桌面环境。他们通过创建一个具有“普适多线程”的内核来管理这个问题。
其他操作系统(Linux、Windows等)不要有这种“普遍的多线程”,因此,没有反应。(请不要进行火焰之战.)
有人能解释一下“普适多线程”(如BeOS/Haiku中的多线程)和Windows或Linux中使用的多线程之间的细微差别吗?
对于开发人员来说,不同的多线程系统意味着什么?
我发现了一个关于BeOS多线程的有趣网站.BeOS多线程
发布于 2009-02-16 23:01:59
这是我为现在封闭的问题所做的回答的抄袭,“BeOS关闭有什么了不起的?”,但在这里应用得很好:
从内存中看,关于BeOS开发的奇怪之处在于,GUI实际上是多线程的,与其他平台上的GUI框架不同,后者往往是绝对单线程的。
这意味着为BeOS开发GUI应用程序完全不同,但我认为这意味着GUI的响应性更强,而无需在应用程序级别进行显式设计来处理GUI交互。
当然,这确实意味着使用互斥等更重要,并且将GUI应用程序从其他操作系统移植到BeOS是很困难的,除非BeOS GUI库通过使用和强制单个应用程序范围的互斥而有效地转化为单线程库。
Linux、Windows以及我在过去十年中使用过的几乎所有其他操作系统都支持多线程,Linux和windows都以非常不同的方式使用多线程,但是非常好--然而,BeOS确实普遍使用多线程--这一点可以从GUI框架(例如GUI框架)中明显看出,而其他大多数操作系统则完全是单线程的。(或者,在最极端的情况下,允许多个线程访问具有未定义后果的.)
https://stackoverflow.com/questions/461088
复制相似问题