《30天自制操作系统》第五天
结构体、文字显示与GDT/IDT初始化 代码的优化及结构体使用 昨天的bootpack.c文件中直接把分辨率、内存地址写入了程序中。但这些数据应该从asmhead.nas中获取。harib02a做的就是这类工作,harib02b中引入了C语言中的结构体。 复制代码 把 \30天自制操作系统\projects\05_day\harib02b 复制到 …
《30天自制操作系统》第四天
C语言与画面显示的练习 昨天完成了黑屏的显示,今天主要完成白屏,花屏,方块屏,基本背景的显示等等。先用汇编直接操作内存,后用C语言中的指针再写一遍同样功能的函数;其中牵扯到自定义调色板的方法和EFLAGS的使用。以后编程基本上都是C语言,总算能脱离汇编了。 汇编实现颜色显示 老规矩,复制代码 把 \30天自制操作系统\projects\04_day…
《30天自制操作系统》第三天
进入32位模式并导入C语言 今天的内容是制作一个真正的启动区,介绍了硬盘结构,和读取硬盘的方法。之后制作了一个功能十分简单的操作系统,最后采用C语言重写了这个操作系统。总之今天算是写一个真正意义上的操作系统,比昨天难了亿点。前两天的内容基本上都算是准备阶段。 制作真正的启动区 启动区也称启动引导程序、主引导记录,MBR(Master Boot Re…
《30天自制操作系统》第二天
汇编语言学习与Makefile入门 这一章的内容如章节标题所示,纯粹对汇编语言以及Makefile基本语法的入门。没有太多关于操作系统方面的知识。学过汇编后直接看代码即可。 接下来要用文本编辑器进行开发。 这里推荐个文本编辑器:Notepad++ 继续昨天的内容开发。 汇编语言入门 把 \30天自制操作系统\projects\02_day\hell…
《30天自制操作系统》第一天
从计算机结构到汇编程序入门 很早就想看看这本书。但书中有很多配套的资料和软件过于久远。还是一个以FAT16格式,安装在软盘中的操作系统。一些验证操作无法实现,想解决这些问题的同时记录下自己的学习笔记。 本书采用windows编程环境,配套的相关软件作者在随书配套的光盘中均有提供。实测windows10可直接运行。 原作者官网http://hrb.o…
RouterOS搭建虚拟专用网络
远程回家,最安全的方案是用虚拟专用网络连接回来,不要把一切内网服务暴露在公网上。一是法律政策不允许,二是存在安全隐患。RouterOS支持多种虚拟专用网络,且正版RouterOS自带DDNS,即使无法使用自带的DDNS,也可以用脚本使用cloudflare的DDNS服务。这样为远程回家提供了更多的选择。PPTP这种非常老的VPN就不考虑了。 L2T…
Windows Server 2022安装Apcupsd
Apcupsd是一款可以在Linux、UNIX、macOS和Windows上运行的APC UPS管理软件。支持APC和APC的OEM品牌产品对UPS进行通信,支持主机在断电后自动关机,同时也支持网络UPS的功能。 以前还有在线文档,现在已经没了:www.apcupsd.org自动跳转下载地址。 不过安装好了以后,在安装路径\apcupsd\doc\…
acme.sh 申请证书教程,Nginx配置证书自动续期
手动管理证书实在是太麻烦。acme.sh是一个能自动签发、自动续期的证书工具。默认申请ZeroSSL的证书,支持多种申请方式,会自动续期,实乃懒人福音,但命令稍微复杂些,且十分灵活。记录下用acme.sh申请TLS证书的教程。 项目地址:https://github.com/acmesh-official/acme.sh 官方wiki:https:…
自建 Docker Hub 加速镜像(转载)
原文连接:https://www.iszy.cc/posts/nginx-docker-hub 试了几种方案,就这个方案确实能用。其他的总是出现各种各样的问题。 众所周知,国内一般不能顺畅拉取 Docker 镜像,要么部署私有仓库,要么使用国内的镜像地址。不过国内的镜像的版本同步没有那么及时,而且最近不知为啥好像都不能用了。部署私有仓库会在本地缓存…
ip address、ip addr、ip a参数详解
ip address会显示网络接口的 IP 地址信息,ip addr和ip a均是其缩写。使用后会显示如下信息。详细记录下显示内容。 以接口“ens192”为例 第一行: 第一行为接口的部分属性。 2: ens192: mtu 1500 qdisc fq_codel state UP group default qlen 1000 1:或2:、3:…