- 时间:2021-03-22 16:49 编辑:牛骏峰 来源:蚂蚁资源 阅读:202
- 扫一扫,手机访问
摘要:大家好,今天给大家介绍关于从零开始的传承系统(从零开始的神级加护)的相关内容,详细讲解从零开始的英雄联盟,从零开始的传承系统TXT,如何从零开始写一个简单的操作系统,如何从零开始写一个简单的操作系统等,希望可以帮助到您。
从零开始的英雄联盟,从零开始的传承系统TXT,.........只有从头开始
如何从零开始写一个简单的操作系统,如何从动物园写一个简单的操作系统?看这个:从零写一个简单的操作系统以询问建议。知道用户的学生职业只有半年。 548人终于来回回答这个问题......超过一年前,最后一次,我看到了@fleuria叔叔的答案,然后我看到这个链接基于Bochs操作系统内核实现,当然,我什么都不理解。除了被吓倒的东西外,我知道一件事:写一个简单的操作系统内核是一个非常英俊和可行的东西。所以我开始写,那时,我的水平可能是:我只会做一个C语言练习。如果我编译,我只知道按F9。编译知道常用说明,并能够使用Win 32来使用Windows。起初我是f否“30天自制操作系统”,每天阅读书,然后从书中播放代码,再次编译操作。因为您应该编写程序集和C,所以您将从Vim开始,从哪个时间开始。完成这本书后,我开始觉得我不是故意的...因为我觉得作者航行了太多的细节,以便让内容更容易。我还阅读了“橙色的橙色操作动作系统”,仍然没有往下看:汇编太多了。在此期间,我还有一个收费的电子邮件给f叔叔,他建议麸皮的Keernel开发教程,我将从本教程开始:“30天自制操作系统”停止和“OS67”开始,这可能是最后一个学期,所以我在github上打开了一个repo。我开始了der Windows,后来切换到Linux,因为Bran的Bootloader是GRUB,我不符合我的原始意图,所以我写了一个,在一直写完之后,交叉保护模式,完成基本设备驱动程序。完成Bran后,我还拒绝编写操作系统的隔间?可能是内容,一步是什么? - 推荐在墨水中光明:Hurley25 / Hurlex-Doc·Github文档已完成一些简单的调试功能和库函数,打印和内存分配。事实证明,尽早写测试功能非常重要,例如恐慌,断言和打印。很多使用有助于您尽快找到错误(当然,这些函数可能会有错误)。阅读赫勒克博士的一部分后,我没有kn迄今为止要做的事情,飓风-Cod中的内核线程切换切换已被误解。这种情况持续到我开始阅读XV6,这是一个简单的UNIX的教学操作系统。如果您查看关于“自制内核”的问题,您会发现XV6重复提到并推荐,实际上它值得推荐:在阅读大部分代码后,这是真的。以前的Bran和Hurlex-Doc的长度相对较小。我已经在电脑上阅读并点燃了。 XV6相对较大。有9000多行和文档,我再次找到了这一点。 :ranxian / xv6-chinese·github xv6文档中文翻译,所以我拍了一家十二美元的学校印刷商店来打印中国文件和代码。这是另一个正确的决定,所以我不必查看对计算机的代码。在下次,我首先读取与XV6相关的文件系统的一部分,然后重写其代码以将Minix文件系统添加到我的内核。然后几乎几乎几乎部分了预定的过程(一些简化),并且原始代码基于操作系统的接口,然后写用户程序,这个过程几乎是“一直到风”。查看XV6的时间通常处于醍醐醍醐状态。最后,我终于完成了这个简单的操作系统内核,几乎一个月:莱卡/ os67·github(真实,我来撒谎星星),一年,一直都是很多技能树(虽然我有一些不好) ,这是这种“从零写简单的操作系统”?为了进一步说,谁不是来自Zerostart?所以我哇要做,我现在会开始它。这是“转动”XV6源代码和中文文件(其实它在书包中无情)“故事”结束,然后说一点经验。 ...... *知道有人讨论“是玩具编译器,让更有趣的”成为一个玩具,然后更有趣“,那么总是大v跳出说有多个肮脏的编译器,实际上,除了CPU上的几个表格之外因为历史原因是恶心,没有特殊的脏核心,而内核也没有,我想做一些事情要送时间,但这两条代码稍微介绍,什么是好的entangle?*在编写内核的过程中,您将接触只有只使用一个的知识,A20线已成为历史,并且没有必要在日常编程中知道GDT IDT的结构。然而,这种冗余是值得给出核心主要部分(文件系统,过程,存储器)的知识的顺序。 *尽快实现调试功能并使用它,擅长使用Bochs的内置调试器,您可以保存自己。 *有时我觉得这种做法非常奇怪,你认为你有更好的做法,通常你想要错。 (当然,只是一般)*上面说XV6一路伪造,20%的时间诱导,80%的时间用于调试。 *对于我来说,“写内核”只是一个很好的声明,正确的陈述是“复制内核”。当然,即使你复制一个,它也是很多好处。 * xv6的优势是甚至如果你的代码是错误的,你可以坚定地相信正确的答案肯定在XV6代码中,也许你还没有理解它,只要你不断看,你会留下正确的道路。越来越近。最后,谢谢@fleuria在微博和电子邮件中的多个帮助,@to浅飓风 - Doc文件,染色同学翻译Xv6中文文件,@家华完全回答了我开始的问题,让我在内核中使用C语言。 #archlinuxcn通道也有很有帮助。发表于2015-11-09邱永申喜剧演员,发展工程师890人第二次批准,老师(中山大学WANHAI)对我们说:“如果有人可以写一下内核,那么他不能上课,做不必做通常的功课,做到这一点它可以,怎么样?感兴趣的? “在与老师讨价还价后,我一直成为唯一一百的人,我没有去核心/所有学期,以及没有这样做的人(代表我的身边不会您可以提供参考,任何信息只能在自己身上找到。我首先购买了“30天的自制操作系统”,需要一个软盘和其他模拟器。我的原始意图是写一种善良,我可以在真正的机器上运行它,所以我看到了它。几页之后,我被扔掉了。后来,我发现了一个中国人的副本,也不是尤其如此。此时,我看到教科书(俗称绿书),Jonemo 800页。接下来的两周后两周,我以速度读了它每小时10页,并将许多标签放在顶部。 800页英文书籍,我学到了很多基本概念(线程过程,内存算法,寻址等)。然后我直接从网络中想到而不是寻找信息,TA兄弟给了我一个操作系统的开发,我写了一千个汇编代码,我已经学会了编译技巧。此时,我有基本的概念知识,该程序的语言也已经理解,了解虚拟机的调试方法,差,只有内核如何崩溃,不清楚。所以我去寻找教学教学,抄袭曾经教导,找到了麻省理工学院项目的代码,并在中国写了一个自制的操作系统,仔细研究,最后开始写作代码。在那个学期,我给了ol,我看到了代码,写内核,写各种模块,记录博客上的进程,花了三个月,最后写一个终端核心(文件系统没有写好,时间不够),你可以运行命令,运行功能,管理内存和进程以及进程中断。 --------------------------这很小是非常好的,我真诚地希望不要阻止它,因为你没有理由。
如何从零开始写一个简单的操作系统,我早些时候写了一个玩具内核,现在我正在做操作系统课程来帮助教学,我有一群同学做到这一点。假设主题对操作系统的某些意识(丢失到裸体测试结束)。整体路线图是关于这个:*以下内容都是干货,试图在没有干预设计的设计设计的情况下尽可能多地指出所有的大坑,这个程序不能被替换/阅读论文/课程/手表手册等。第一阶段:早期计划1.明确您打算写核心干燥:尝试设计?实践实施?什么会跑?不要计划跨平台?有什么平台? 2.界面总统是什么?什么服务提供给用户空间? (不一定与现有系统兼容)3。您如何启动?它与现有的引导加载程序兼容或自己写一个吗?内核加载时的格式是什么?第二阶段:解决方案4.选择架构,推荐IA32或ARMV7A,5.找到各种手册来查看它,大脑协调内核中的各种机制。选择目标设备让我们玩耍,但内核是写的,或者最后一个设备更好。 (如果您打算在Raspberry Party上进行覆盖,您将更加沮丧)7。此设备启动过程如何,并且与以前的想法没有冲突? 8.找到各种手册看,你有坑吗?时钟,中断,DMA,可能是如何做到的,有一个数字。你想要一个调试计划,如j标签?你有没有?这不方便吗? 10.提前组织模块分部,代码结构,编译管理方案等。第三阶段:初始实施11.选择后,您将购买设备。如果您需要SD卡,则您已购买。如果您需要它,您将使用NOOOBS的套件尝试。 12.准备工具箱。在Linux上,您需要GCC和Binutils。你想添加libgcc吗?什么坑不添加? (Cortexa9没有硬件整数划分,您在说什么作为最简单的内核或引导加载程序。15.(如果您编写引导加载程序),则应写入您想要的驱动器和您想要的支持代码加载,你应该写它。内核负载在哪里?如果我希望加载到一个非常奇怪的地址(例如设备区域或在引导加载程序上重叠),我该怎么办? 16.您是否必须在初始化方面进行吗?页表准备打开MMU?说MMU要说缓存,什么是在目标架构上维护内核?如何启用?如何处理设备区域? (MIPS没有在这里处理硬件表Walker)17。您想跳入虚拟地址吗?你如何划分虚拟地址空间?第四阶段:各种核心组件18.可以容纳一组完整的线性映射吗?如果我不能,我该怎么办?类似于VMalloc和IREMAP机制,如果您想实现它,您需要提前计划。 19.物理记忆如何管理?为连续页面分配并回收算法? 20.如何处理任何大小内存块的分配和发布?有什么需要大量的对齐(您不运行的ARM的第一类页面列表),我该怎么办? 21.如何管理虚拟地址空间?用户空间和内核自己的虚拟地址空间管理方案可以不同。 22.如何处理中断和错误?你怎么做呢?如何设置路线? 23.系统调用中使用什么样的格式?如果我有信息收购,我该怎么办? 24.背景应该保存和恢复什么?你省了什么? 25.各种司机如何部署和运行?静态载体或动态注册?有内核模块机制吗?怎么办我T?司机是否不得低于内核?如何实现?你想参加未来的安排吗?什么是特殊的用户? 26.流程和线程如何旨在实施?依赖于用户空间库来安排像Linux这样的线程和线程组?过程描述的问题是什么? 27.如何使用时钟?时钟比较器还是独家? 28.什么是调度算法?有没有好处? 29.如何实现自我纺丝?什么是使用要求? 30.核心同步机制?如何实现? 31.如果你超过CPU,其他核心如何醒来?醒来后需要什么初始化? 32.如何实施内部系统调用?第五阶段:和用户交配33.如何将提供的系统调用为C.图书馆? 34.什么文件系统支持?您想导出虚拟文件系统吗?什么不是通过控制台输入和输出计算的?第六阶段:可选的内核组件35.管道,共享内存等IPC方案? 36.动态安装和卸载文件系统? 37.前面提到的内核模块? 38. Kexec和Kdump的机制? 39. ASLR?跑步?一些其他被动安全机制? 40.随机数发生器? 41.是安全的记忆力吗?处理器加密解密部分? 42.是短缺和变化吗? 43.你区分了用户吗?团体?密码?阴影? 44.文件许可? Suid / Sgid? 45.用户的初始概念应该始终承担一些责任吗? 46.管理权力和频率?闲置完成了吗? 47.与文件/文件进行一些互动系统和内核? 48.网络?路由?名称服务?防火墙? 49.动态设备管理?热插拔? 50.(我无法想到更多)指出图形界面?
责任编辑(
牛骏峰)
以上就是关于**从零开始的传承系统,从零开始的神级加护**的全部内容,如有需要以上系统,请在搜索框搜索商品或者咨询客服,了解更多请关注蚂蚁资源网。
内容来源于网络,如无意中有侵权,请联系客服核实,以便及时删除,谢谢支持!
- rushou
- 从零开始设计一个操作系统到底有多难,从技术的角度讲,这非常难,那是相当地难。究竟有多难,看你设计操作系统的目的是什么。如果是为了与现有的操作系统竞争,那比登天还难。如果你只是为了小范围的应用,那难度就小了很多。从商业的角度讲,这又很容易。虽然自己什么都没有,但是有开源的 Linux 操作系统,自己捣鼓捣鼓,一个操作系统还不是就出来了。想那 Android 就是在开源的基础上搞出来的。
- 2021-03-22 16:49:01
- 大少爷
- 第一、做OS要站在巨人肩膀而不是重新从头拧螺丝,自主就是从零开始的误解必须要打破。大家都知道,华为做鸿蒙系统,此前就表示将会是兼容安卓系统,并且还可以适用于Web以及应用等。不过,就目前的情况来看,笔者更加相信华为的鸿蒙系统应该是与安卓系统一样的基于Linux内核实现的操作系统,而不是纯粹的完全与安卓系统不一样,毕竟谷歌做安卓系统的时间太长了,华为想要从零开始做系统,显然有点不现实!第二、操作系统是软件,但更需要软硬通吃。技术上OS的很多底层驱动和硬件相关,决定了一个成功的OS必然需要与芯片、终端硬件紧密协同。大家都知道,鸿蒙系统要实现的是手机、平板、穿戴设备、智能硬件等的互联共用一个平台,所以就必须实现硬件的支持,谷歌的安卓系统之所以强大,是因为有足够多的硬件来支持,所以华为想要做自己的系统,必须有更多的硬件都用上这个系统,同时更好地完成适配工作,才能不断壮大。第三、真正的OS必须市场导向,接受市场的检验,源于市场用于市场。只有真正在市场打拼搏命的企业才能产生真正有竞争力的OS,觉不能做象牙塔里的项目。也就是说,虽然华为的鸿蒙系统对比谷歌安卓或者苹果iOS可能都会有不足,都应该与市面上的产品进行对比,因为即便你认为华为做系统时间太短,这样对比有点不公平,但对手不会给你同情,好用就是好用,太过难用也不能强求消费者买单。第四、研发有竞争力的OS难,经营生态更难,但更加重要的是如何吸引更多的友商与开发者加入。我们相信华为有能力引领前行,也相信华为可以在鸿蒙系统之后逐渐为国产手机系统打开局面。然而,仅凭华为一己之力是断然难以与谷歌的安卓、苹果的iOS想抗衡的,华为更需要的是吸引小米、OPPO和vivo等友商也加入到开放国产系统的阵营当中来,或者是利用“方舟编译器”吸引更多的开发者加入到鸿蒙系统的研发与维护上来,这才能保证华为建立起生态。
- 2021-03-22 16:49:01
- 你大爷
- 二次元之300英雄二次元世界之书这两部小说里面都有从零开始的异世界生活的部分
- 2021-03-22 16:50:50