作者 主题:无论是在C / C ++中写入的操作系统的任何示例吗? (Read 6136 times)

0会员和1位客人正在查看此主题。

在线的 Ditbho.

  • 频繁的贡献者
  • **
  • 帖子:518
  • 国家: GB.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#25 on: 1月12日,2021年,08:44:49»
OCAML.

你认为在2021年学习这种语言也值得吗?
我很诱惑,虽然我的优先事项是生锈的。

我很喜欢上面的帖子,一个链接到锈的真正的操作系统!
我是那种更好地通过例子学习的人  :D
« 上次编辑:2021年1月12日,08:48:38 Ditbho »
 

离线 siliconwizard.

  • 超级贡献者
  • ***
  • 帖子:6176
  • 国家: FR.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#26:2021.年1月12日,09:02:50 PM»
OCAML.

你认为在2021年学习这种语言也值得吗?

学习新的东西几乎总是值得的。
现在你是否将亲自使用OCAML以获得任何有用的东西是另一个问题。
 
以下用户感谢此帖子: Ditbho.

离线 ve7xen

  • 频繁的贡献者
  • **
  • 帖子:860
  • 国家: 加利福尼亚州
    • VE7XEN博客
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#27: 1月12日,2021年,09:26:20 PM»
你对Rust的任何一切都知道什么,还是你只是在一定的老人那样无知和傲慢地带来了?
在没有看到下一个大事的无尽重复周期的经验,你是无知和傲慢的年轻白痴,不知不觉,也是如此那里'总是那个精彩的小事,这意味着世界将看到下一个大事和群的辉煌。每一次长时间的人真的这样做。不过,不经常。也许Rust将达到大时间,但除非在该地点写入的一个或多个大规模的长期系统,否则赔率对其进行了很大的影响。

我没有争辩,这将是成功的,我引用的90%的人的引用不适用于生锈,掩盖对实际情况的完全缺乏了解。我也认为良好的程序员们不喜欢的态度't犯错误,因此不要'T需要制作正确做事的工具更容易是精英和愚蠢的。就像任何人都喜欢Malloc /免费,或者是无可救药的 :palm:.

它会成功吗?尚未见到。它是否有DC1MC Rants关于的缺点之一?不,能够进行系统编程的现代语言的成功是一件好事吗?无可否认是的。
« 上次编辑:2021年1月12日,09:28:50 PM由VE7XEN »
73 de Ve7xen.
他/他
 

离线 ejeffrey

  • 超级贡献者
  • ***
  • 帖子:2427
  • 国家: 我们
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#28 on:2021.年1月12日,09:58:48 PM»
一罐't在垃圾中写一个操作系统 languages

那不是'甚至遥远的真实。 就像所有语言一样,在编写操作系统时,您可能需要自己实现运行时的某些部分。 在C中编写操作系统时,您要么必须完全避免Malloc,以自己实现它,或使用提供低级别挂钩的库实现来操纵内存池。 与垃圾收集相同,垃圾收集器需要一些潜在的函数来管理他们的内存池的大小,但是如果您提供无论您可以在操作系统中绝对使用GC。
 

在线的 DC1MC

  • 超级贡献者
  • ***
  • 帖子:1231
  • 国家: 德
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#29开: 下午10:39:30 1月12日»
我会说,让'使用姓名呼叫和人员攻击来调用它,呼叫名称工具(甚至是概念),而不是人民。侮辱讨论合作伙伴并不是怀疑人,并且不会让人聪明地聪明地弄得一致。
这说,我会永远留下这个主题,让你在很快成为甲壳类的人的手中。

DC1MC
 

离线 矮林

  • 超级贡献者
  • ***
  • 帖子:6148
  • 国家: GB.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#30: 下午10:45:28 1月12日,10:45:28»
OCAML.

你认为在2021年学习这种语言也值得吗?
我很诱惑,虽然我的优先事项是生锈的。

我很喜欢上面的帖子,一个链接到锈的真正的操作系统!
我是那种更好地通过例子学习的人  :D
我认为它是一种你可能想要学习的语言,而不是能够使用它,而是能够看到相当不同的计算机语言。有几种语言值得学习只是为了扩大您对计算机语言所能的理解。每个人都应该学习Snobol :)
 
以下用户感谢此帖子: Ditbho.

离线 遗体

  • 超级贡献者
  • ***
  • 帖子:6846
  • 国家: GB.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#31开: 1月12日,2021年,晚上10:55:54»
我会说,让'使用姓名呼叫和人员攻击来调用它,呼叫名称工具(甚至是概念),而不是人民。侮辱讨论合作伙伴并不是怀疑人,并且不会让人聪明地聪明地弄得一致。
这说,我会永远留下这个主题,让你在很快成为甲壳类的人的手中。

DC1MC

你开始侮辱整体 班级 of people, so I don'认为您非常适合您向道德高地申请。

没有在C +组装中写的许多象魔中,只有那些实际上和通过时间考验的人,其余的是学术手淫,超级专业化的NIH的东西和被遗忘的爱好者的尝试,永远保持在0.0.1alpha0版本中。遗忘'90s窗剧网页或存储库。

 Rust将像剩下的所有过度设计的危险实验一样,最终用于某种虚拟机管理程序或虚拟化,其中沉重的提升将由C或组装的东西完成,但它将无法看到Mediocre程序员谁会愉快地宣布"duuude, I'在Python中写了一个用户模式驱动程序......是的,我写了一个rust的调度程序,这个操作系统的东西是如此简单......".

 有时候较低的水平和难度就是这样,而不是将应用级别的东西还原并试图用自动化糖 垃圾收集器和对象范式,伪装的伪装解释器和Mediocre程序员的其他拐杖将永远失败。


任何人都有一个注射器,我可以用来挤压魔法烟雾吗?
 

离线 遗体

  • 超级贡献者
  • ***
  • 帖子:6846
  • 国家: GB.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#32开启: 2011年1月12日,晚上10:56:54»
...有几种语言值得学习只是为了扩大您对计算机语言所能的理解。每个人都应该学习Snobol :)

但Lisp可能会带来太远的东西。  :)
任何人都有一个注射器,我可以用来挤压魔法烟雾吗?
 
以下用户感谢此帖子: 新的brain, Ditbho.

离线 矮林

  • 超级贡献者
  • ***
  • 帖子:6148
  • 国家: GB.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#33开: 1月12日,2021年,11:01:43»
...有几种语言值得学习只是为了扩大您对计算机语言所能的理解。每个人都应该学习Snobol :)

但Lisp可能会带来太远的东西。  :)
好吧,一世'd列出了Lisp作为学习的有趣事情之一,但我'D把它放在括号中。
 
以下用户感谢此帖子: artag., 新的brain, Ditbho.

离线 siliconwizard.

  • 超级贡献者
  • ***
  • 帖子:6176
  • 国家: FR.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#34开: 2011年1月12日,晚上11:07:40»
...有几种语言值得学习只是为了扩大您对计算机语言所能的理解。每个人都应该学习Snobol :)

但Lisp可能会带来太远的东西。  :)
好吧,一世'd列出了Lisp作为学习的有趣事情之一,但我'D把它放在括号中。

(你怎么会那么说))))
 
以下用户感谢此帖子: Ditbho.

在线的 魔法

  • 超级贡献者
  • ***
  • 帖子:3037
  • 国家: pl
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#35开启: 1月12日,2021年,11:29:42»
它似乎也在Linux中获得牵引力 - Linux内核中的Rust代码看起来更有可能随着语言团队领先的承诺支持.
reg让它向后 - 为此发生这种情况,Rust将不得不接受Linux开发人员,而不是Linux获得验收的生锈开发人员 :-DD

OCAML.

你认为在2021年学习这种语言也值得吗?
不一定,如果您学习标准ml,它也会没问题。
 
以下用户感谢此帖子: Ditbho.

离线 siliconwizard.

  • 超级贡献者
  • ***
  • 帖子:6176
  • 国家: FR.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#36开启: 1月13日,2021年,12:03:04»
它似乎也在Linux中获得牵引力 - Linux内核中的Rust代码看起来更有可能随着语言团队领先的承诺支持.
reg让它向后 - 为此发生这种情况,Rust将不得不接受Linux开发人员,而不是Linux获得验收的生锈开发人员 :-DD

嗯,谈论生锈的Linux似乎已经被吹出了比例。在任何时候,我都知道Linus将考虑用Linux内核重新替换C ruc​​t,但明天也可能在10年内。我们可以得出结论,因为他猜,我猜,这是至少他没有'当他始终用C ++完成时猛烈地拒绝它。
 

在线的 魔法

  • 超级贡献者
  • ***
  • 帖子:3037
  • 国家: pl
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#37 on: 1月13日,2021年,12:48:49»
IMO将所有东西移动到不同的语言中根本不会发生在项目的寿命范围内,但即使接受我认为不太可能的单个模块也是如此。但是,嘿,你可以随时编写自己和modprobe它 ;) 一些波兰大学的一些人甚至把Haskell放在那里,无论漂浮你的船。
 

在线的 Ditbho.

  • 频繁的贡献者
  • **
  • 帖子:518
  • 国家: GB.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#38 on: 1月13日,2021年,06:45:53»
reg让它向后 - 为此发生这种情况,Rust将不得不接受Linux开发人员,而不是Linux获得验收的生锈开发人员 :-DD

哈哈  ; D.

嗯......真实,但Linus以某种方式使用C作为对象编程语言,用没有任何本土支持的语言完成; C ++确实有,但Linus没有'像它一样,Rust确实有,而Linus正在看它,但锈语言正在迅速发展,并且由于这种情况可能会出现这种情况,尽管努力确保在可能的情况下兼容兼容性。

无论如何,对我来说,速度不断发展意味着甚至生锈正在寻找Linux,以便提供真正需要的东西。
« 上次编辑:1月13日,2021,05:46:54由Ditbho PM »
 

离线 Techman-001.

  • 频繁的贡献者
  • **
  • !
  • 帖子:741
  • 国家: Au.
  • 电子技术员过去50年
    • MECRISP Stellaris非官方Userdoc
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#39开: 1月13日,2021年,07:28:21»
有没有人见过,可以在这里报告一个没有用C / C ++ / Objc写入的操作系统的链接?

您可以在几乎每种语言中介绍,包括生锈,LISP,装配,Bash,Perl,Lua,Python,C,C ++等。我使用的第一个(在我的SIG中)中写入汇编程序。

只是一些例子:

STAAPL是针对PIC18F微控制器的类固醇的宏汇编程序。它可用于编写针对大小的固件。它去了C不能去的地方,汇编器太复杂的地方。它基于球拍方案(代码生成器)及其(低级语言和机器型号)。
http://zwizwa.be/staapl

rust-forth-compiler 0.5.3
//docs.rs/crate/rust-forth-compiler/0.5.3

FiRth是一种用于DSL创作的简单的语言,在Lua实施。
//github.com/IonoclastBrigham/firth

Pyforth,在Python编写的第四语言的最小实现。
//github.com/whaleygeek/pyforth





Bluepill Diagnostics:  //mecrisp-stellaris-folkdoc.sourceforge.io/bluepill-diagnostics-v1.6.html
MECRISP-Stellaris Cortex-M Forth Doc;  //mecrisp-stellaris-folkdoc.sourceforge.io/
//learning-microprocessors.sourceforge.io 在IRC上谈论:freenode.net #mecrisp
 
以下用户感谢此帖子: Ditbho.

离线 NUSA.

  • 超级贡献者
  • ***
  • 帖子:1953年
  • 国家: 我们
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#40开启: 1月13日,2021年,08:08:44»
 
以下用户感谢此帖子: 新的brain, Ditbho.

离线 Radiogeek381.

  • 常规贡献者
  • *
  • 帖子:93
  • 国家: 我们
    • 苏打腺adio
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#41开启: 1月13日,2021年,02:20:19下午»
Re:VM和Bliss

我的回忆是VAX / VM和PDP-11 / RSX-11主要是在汇编程序中编写的。 然而,VAX文件系统(FILES-11)至少具有福利组件。 

我在80年拿走了VAX / VMS内部课程'S并为几个项目写了内核模块。 (数字明矾 1983年 - 通过英特尔收购我的师)。 在数字之前,我为RSX写了一个I / O驱动程序。  I don't ever recall在V5.0之前看到任何幸福的模块作为VAX VMS内核的一部分 - 也许是幸福在此之后介绍。 

Bliss-11用于为CMU构建Staros操作系统's Cm*.



 
以下用户感谢此帖子: 埃德瓦德

离线 siliconwizard.

  • 超级贡献者
  • ***
  • 帖子:6176
  • 国家: FR.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#42开启: 1月13日,2021年,03:14:47 PM»
但是,尽管努力确保在可能的情况下,尽管有努力确保转发兼容性,但由于这一兼容性问题可能会迅速发展,而且由于这一问题,因此可能会出现这种情况。

这确实是一个*主要的*问题。
 
以下用户感谢此帖子: Ditbho.

离线 名义动物

  • 超级贡献者
  • ***
  • 帖子:2372
  • 国家: FI.
    • 我的主页和电子邮件地址
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#43开: 1月13日,2021年,03:20:36 PM»
在任何时候,我都知道Linus将考虑用Linux内核重新替换C ruc​​t,但明天也可能在10年内。我们可以得出结论,因为他猜,我猜,这是至少他没有'当他始终用C ++完成时猛烈地拒绝它。
正如我所理解的那样,拒绝是逻辑:与C不同'S独立的环境(哪个Linux依赖于),C ++'仍然需要运行时<new> and <exception>,这使得它是一个禁止,因为Linux内核必须从根本上重新设计以在这样的运行时运行。  Also, C++'S独立的环境留下了太多定义的事情,这意味着内核开发人员必须求求求解编译开发人员提供理智的实现定义行为,除了过去几年,处理GCC开发人员对内核开发人员来说令人头疼。

重要的是要注意,大多数嵌入式C ++环境中使用的是如此。微控制器aren'真的是c ++,而是一个独立的c ++环境的子集;特别是,不支持异常。 所以,虽然热情的C ++程序员只是说"然后只使用你想要的子集!"问题是,当您有一个可能会居住几十年的项目时,您希望依赖的东西,而不是依赖于实现定义的行为以及编译器开发人员的假定睦邻。

相比之下,独立式C环境是 简单且定义.

我相信这也表明为什么开发OS内核需要严格定义的编译器,或与编译开发人员密切合作。 我对生锈和氧化还原开发人员之间的互动特别感兴趣,特别是因为两者都积极发展。 在这台PC时代,我想在私人讨论任何真正的摩擦问题,没有运动开始纸张跟踪...... 我喜欢LKML的诚实,其中kdbus等伊斯兰教建议在公共场合被召唤出来。
« 上次编辑:2021年1月13日,03:22:18 PM由名义上的动物 »
 
以下用户感谢此帖子: Ditbho.

离线 矮林

  • 超级贡献者
  • ***
  • 帖子:6148
  • 国家: GB.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#44 on: 1月13日,2021年,03:53:25 PM»
Re:VM和Bliss

我的回忆是VAX / VM和PDP-11 / RSX-11主要是在汇编程序中编写的。 然而,VAX文件系统(FILES-11)至少具有福利组件。 

我在80年拿走了VAX / VMS内部课程'S并为几个项目写了内核模块。 (数字明矾 1983年 - 通过英特尔收购我的师)。 在数字之前,我为RSX写了一个I / O驱动程序。  I don't ever recall在V5.0之前看到任何幸福的模块作为VAX VMS内核的一部分 - 也许是幸福在此之后介绍。 

Bliss-11用于为CMU构建Staros操作系统's Cm*.
当我理解它时,VMS内核本身可能没有多于幸福,而是内核周围的代码的大部分代码,使其成为完整的操作系统,最初是幸福的。
 
以下用户感谢此帖子: Ditbho.

离线 矮林

  • 超级贡献者
  • ***
  • 帖子:6148
  • 国家: GB.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#45: 1月13日,2021年,03:57:12 PM»
但是,尽管努力确保在可能的情况下,尽管有努力确保转发兼容性,但由于这一兼容性问题可能会迅速发展,而且由于这一问题,因此可能会出现这种情况。
这确实是一个*主要的*问题。
这是90年代持有C ++的主要事物之一。几乎每个编译更新时,您都会在代码中打破一些时期。如果不是这样,C ++编译器可能很可能是流离失所者的C编译器,其中一些写作像我们仍然使用C的写作,以及一些我们用C ++的完整功能写作。
 
以下用户感谢此帖子: Ditbho.

离线 siliconwizard.

  • 超级贡献者
  • ***
  • 帖子:6176
  • 国家: FR.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#46开: 1月13日,2021年,04:31:35 PM»
但是,尽管努力确保在可能的情况下,尽管有努力确保转发兼容性,但由于这一兼容性问题可能会迅速发展,而且由于这一问题,因此可能会出现这种情况。
这确实是一个*主要的*问题。
这是90年代持有C ++的主要事物之一。几乎每个编译更新时,您都会在代码中打破一些时期。如果不是这样,C ++编译器可能很可能是流离失所者的C编译器,其中一些写作像我们仍然使用C的写作,以及一些我们用C ++的完整功能写作。

除了特定的优点或缺乏给定语言之外,这是最有问题的点。

关于使用"subsets"一种语言,这是一种与C ++相对普遍的方法,我认为这也是一个问题而不是解决方案,特别是当这些子集没有明确定义时,这是我在多年来的目睹的情况下,是通常的。

Spark,OTOH,是明确定义的子集(ADA)的一个例子,因此'可用。但是对于C ++,我很少见到,如果有的话,如果在明确的报告中,开发人员将坚持下去,所以即使子集通常是移动目标。

 
以下用户感谢此帖子: Ditbho.

离线 Westfw.

  • 超级贡献者
  • ***
  • 帖子:3405
  • 国家: 我们
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#47开启: 1月14日,2021年,03:37:15 AM»
引用
Tops-10 - 幸福 -
//en.wikipedia.org/wiki/TOPS-10I'm很确定顶部-10是主要在宏-10中编写的,pdp-10s汇编语言.it'S Origins预先幸福,顶部 - 20(比Tops10更新)几乎都是宏观10。
那'并不是说在任何地方都没有幸福。  But ... not a lot.
(嘿。 在最高10天内,之间的线条"monitor"(OS)和公用事业非常模糊。 例如,用户命令处理器是监视器的一部分,但我'不完全在哪里线"programming language" were. 在最近的时间里,那里'介绍了较小的界线"kernel" and "support code",但整体一词"OS"包括两者(并且一般"more"用户代码)......)

各种种类"LISP machines"20世纪80年代中期肯定有很多"OS" written in LISP.
 
以下用户感谢此帖子: Ditbho.

离线 花束

  • 超级贡献者
  • ***
  • 帖子:6090
  • 国家: CH.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#48开启:2021.年4月15日,09:42:05 PM»
我认为第一块Mac OS版本是用Pascal编写的。 LISA OS的DITTO哪个MAC OS部分基于。
正确的。 LISA软件和经典MAC OS(最初被称为MAC系统软件)最初是用Pascal编写的。但是,MAC的较小ROM和RAM强迫他们在68K汇编程序中重写其中大部分时间,即使使其适合。 (在早期MAC中,在磁盘上的ROM中有大约多个操作系统。)

//www.folklore.org/StoryView.py?project=Macintosh&story=Hungarian.txt
引用
Macintosh使用了与其前身,LISA相同的摩托罗拉68000微处理器,并且我们希望利用我们尽可能多地为Lisa编写的代码。但大多数LISA代码是用Pascal编程语言编写的。由于Macintosh具有更严格的内存约束,因此我们需要使用处理器的母语,68000次汇编语言的母语来以最有效的方式编写大多数系统导向的代码。即便如此,我们仍然可以通过将帕斯卡翻译成汇编语言来使用LISA代码。


我们直接成立了QuickDraw,Bill Atkinson's惊人的位映射图形包,因为它已经在大多数汇编语言中编写。我们还使用了Lisa窗口和菜单管理器,我们从账单中以汇编语言重新编码's原始帕斯卡尔,将代码大小减少两倍左右。账单'Savice Pavascal Code是一种清晰度的模型,所以实现了相对容易完成的。

Mac缺少较大系统中普遍存在的内存映射硬件,因此我们需要一种方法可以在软件中重新定位内存,以最小化碎片,因为块被分配和释放。 LISA Word处理器团队已开发出具有可重定位块的内存管理器,间接访问内存块"handles",因此可以根据需要移动块以减少碎片化。我们决定将其用于Macintosh,再次将其从Pascal重新编码到汇编语言。

Folklore.org是Andy Hertzfeld的网站,原来的Mac软件Devs之一,并有很多参考所述帕斯卡,例如:
//www.folklore.org/StoryView.py?project=Macintosh&story=3rd_Party_Developers_and_Macintosh_Development.txt
 

在线的 Ditbho.

  • 频繁的贡献者
  • **
  • 帖子:518
  • 国家: GB.
Re:任何在C / C ++中写入的操作系统的示例?
« 回复#49:2021.年4月16日,09:41:13 AM»
与此同时,我在大会上写了我的司机,用于超声波游侠传感器使用了一个个人柔软的核心,它是它的ISA纯粹的发明,既没有C编译器也没有Pascal编译器,我也不得不写下我的自己的装配编译器。

我刚刚写了一个简单的驱动程序,将来自SPI 12位ADC的电压进行采样,控制超声波脉冲发射器的输出触发器,并测量回波冲动的脉冲宽度(1)返回接收器,但我已经是如此我可以丢失,所以疲惫不堪'真的了解人们如何在HL编译器之前管理这些东西  :o :o :o



(1)有一个免费的跑步者32位计时器和比特比较电路,需要进行武装和控制。
 


分享我

掘客  Facebook  诽谤  可口的  Technorati.  推特  谷歌  雅虎
SMF.