zyj 发布的文章
从零开发操作系统 -- 第一条指令
操作系统本质上也是一个程序,与我们编写的应用程序一样,最终都会转换成二进制的机器指令被CPU执行,只是随着计算机的发展,操作系统这个程序被赋予了更多特殊的职责。今天我们暂且不谈操作系统的诸多功能,而是回归到它作为程序的本身,首先让它的第一行代码在计算机上跑起来。
从零开发操作系统 -- 目录
前言
操作系统是与开发者日常工作息息相关的基础软件,我们编写的所有应用程序都运行于操作系统之上,一旦涉及到对应用性能、资源等的优化,就离不开对操作系统工作原理的理解,同时操作系统也是学习计算机底层技术的敲门砖,掌握其原理会对程序的开发带来潜移默化的帮助。
MIT6.828 — Lab2 Simple Shell
Mit6.828/6.S081 fall 2019的Lab2是Simple Shell,内容是实现一个简易的shell程序,本文对该实验的思路进行详细介绍,并对xv6提供的shell实现进行深入解析。
Serverless无服务器架构详解
本文对Serverless架构的基础概念、具体产品、应用场景、工作原理进行详细解析。
基于云服务的个人网站架构设计
本文介绍如何基于各种云服务优雅且低成本地搭建个人网站,涉及的云产品有云服务器、SSL、企业邮箱、对象存储、CDN、云函数、API网关、云监控等。
MIT6.828 — Lab1 Unix Utilities
Mit6.828/6.S081 fall 2019的Lab1是Unix utilities,主要内容为利用xv6的系统调用实现sleep、pingpong、primes、find和xargs等工具。本文对各程序的实现思路及xv6的系统调用流程进行详细介绍。
MIT6.828准备 — risc-v和xv6环境搭建
本文介绍搭建Mit6.828/6.S081 fall2019实验环境的详细过程,包括riscv工具链、qemu和xv6,以MacOS下的实践为例,Linux系统同样可以参考。
关于博客
距离上一篇博客转眼已过了近一年半的时间,最近开始稳定下来,计划持续进行博客更新。
Fabric Chaincode调试 —— 开发者模式和单元测试
在fabric开发中,chaincode的测试是一个令人比较头疼的问题,一是由于实际情况中chaincode中的存储和查询是依赖于peer节点上的状态数据库的,所以无法在本地直接测试;二是由于chaincode是运行于容器中的,这导致我们很难获取在代码中打印的日志。