首页 > 其他分享 >四千行代码写的桌面操作系统GrapeOS完整代码开源了

四千行代码写的桌面操作系统GrapeOS完整代码开源了

时间:2023-09-19 17:34:04浏览次数:47  
标签:四千 操作系统 代码 GrapeOS 桌面操作系统 https com

简介

学习操作系统原理最好的方法是自己写一个简单的操作系统。
GrapeOS是一个非常简单的x86多任务桌面操作系统,源代码只有四千行,非常适合用来学习操作系统原理。
源码地址:https://gitee.com/jackchengyujia/grapeos
视频教程地址:https://www.bilibili.com/video/BV1nv4y1b7Nj/
课程讲义地址:https://www.cnblogs.com/chengyujia/category/2279524.html
GrapeOS操作系统QQ1群:643474045(已满)QQ2群:123758575

截图

GrapeOS桌面:

GrapeOS桌面
GrapeOS桌面

GrapeOS资源管理器:

GrapeOS资源管理器
GrapeOS资源管理器

GrapeOS记事本:

GrapeOS记事本
GrapeOS记事本

主要知识点

实模式
保护模式
大分辨率画面模式
磁盘及文件系统
内存分页
内存管理
中断管理
定时控制
键盘控制
鼠标控制
消息机制
图形绘制
图层和窗口管理
多任务管理
内核任务
用户任务
进程与线程
系统调用

标签:四千,操作系统,代码,GrapeOS,桌面操作系统,https,com
From: https://www.cnblogs.com/chengyujia/p/17715204.html

相关文章

  • 开发微信支付C/C++代码
     抄自:  https://zhuanlan.zhihu.com/p/606909332?utm_id=0 在QtC++中实现微信收费使用功能需要借助微信开放平台提供的API接口,具体步骤如下:注册微信开放平台账号,并创建应用。在创建应用时,需要选择相应的应用类型(如网页应用、移动应用等)和使用场景(如公众号、小程序等),并......
  • python 如何将不完全连续的整数序列按[1-5,6,8-10]的格式输出,给出函数代码
    python如何将不完全连续的整数序列按[1-5,6,8-10]的格式输出,给出函数代码defformat_integer_sequence(seq):formatted_seq=[]start=Noneend=Nonefornuminsorted(seq):ifstartisNone:start=numend=num......
  • 【原创】BGP常见的邻居错误代码
                                                        BGP建立邻居的常见错误代码 在BGP建立邻居的过程当中,若邻居建立有问题,则会在BGP的Notification报文中出现常......
  • [代码随想录]Day48-动态规划part16
    题目:583.两个字符串的删除操作思路:还是最长公共子序列,假设最长公共子序列长度是l;那么需要删除的次数是len(s1)-l+len(s2)-l代码:funcminDistance(word1string,word2string)int{lens1:=len(word1)lens2:=len(word2)dp:=make([][]int,lens1+......
  • 代码随想录算法训练营第十一天
    代码随想录算法训练营第十一天|LeetCode239(滑动窗口最大值)LeetCode347(前K个高频元素)239:滑动窗口最大值LeetCode239(滑动窗口最大值)importjava.util.Deque;importjava.util.LinkedList;classSolution{publicint[]maxSlidingWindow(int[]nums,intk)......
  • gitlab-代码管理工具的离线安装部署
    gitlab-代码管理工具的离线安装部署最低安装条件:资源最低限度推荐CPU2核4核内存4GB8GB解决安装依赖yum-yinstallpolicycoreutilsopenssh-serveropenssh-clientspostfixpolicycoreutils-pythongitlab的rpm包下载开始rpm安装[root@localhost~......
  • 视频|分类模型评估:精确率、召回率、ROC曲线、AUC与R语言生存分析时间依赖性ROC实现|
    全文链接:http://tecdat.cn/?p=20650 原文出处:拓端数据部落公众号 视频|分类模型评估:精确率、召回率、ROC曲线、AUC与R语言生存分析时间依赖性ROC实现分类模型评估精确率、召回率、ROC曲线、AUC与R语言生存分析时间依赖性ROC实现 本文将帮助您回答以下问题:ROC曲线是什......
  • 无法访问MySQL,错误代码1045 (28000): 用户'bill'@'localhost'被拒绝访问
    这个错误通常是由于权限设置不正确或者密码错误导致的。你可以尝试以下解决方案来解决这个问题:确保密码输入正确:在输入密码时要注意区分大小写,确保将正确的密码输入。检查用户权限:使用root用户登录MySQL,执行以下命令来查看用户bill的权限:SHOWGRANTSFOR'bill'@'localhost';确认用......
  • 在Linux系统中使用gdb调试一个代码
    首先我们知道在使用vs时,我们时可以通过调式一段代码来找出我们这段代码的逻辑错误在哪里的,但是在Linux中没有对应的图形化界面,我们应该怎么去调试一个代码呢?这里就需要使用道Linux中的一个工具叫做gdb。首先要检测你的操作系统中是否安装了gdb。检测安装gdb使用下面的指令gdb--ver......
  • Docker容器化代码上线
    启动gitlab和jenkins存在的问题1)gitlab拉代码地址2)Jenkins如何拉gitlab代码3)Jenkins公钥如何永久保存4)Jenkins拉下来代码之后,需要将代码打到docker镜像中,jenkins这台容器如何执行docker命令5)Jenkins中,如何登录harbor(永久登录harbor)主机IP角色docker0110.0.0.101webdocker0210.0......