Morning Edition
星期日, 二月 15, 2026

折鸦夜明け前

我们的同志在困难的时候,要看到成绩,要看到光明,要提高我们的勇气。

Crash Course Computer Science

此文章的 撰写时间 撰写时间 可能有误

继电器|真空管|晶体管

def ‘a new level of abstraction’ [-=>]

晶体管 [=>] 逻辑门(AND/OR/XOR/NOT)[=>] 半加器/全加器 [=>] ALU

晶体管 [=>] 逻辑门(AND/OR/XOR/NOT)[=>] 锁存器/门锁 [=>] 寄存器 + (并列|矩阵)+ 多路复用器 -> SRAM (definition linking to RAM

Git 版本控制

此文章的 撰写时间 撰写日期 绝对有问题

此文章 没有写完

了解Git:

Git是一个版本控制系统. 常用场景如下 ## 场景一: 程序员A写了个功能,但写好后怎么交?直接替换文件?非也 直接git merge master(下面会说) ## 场景二: 开发者A写了一个功能,然后提交到开发环境 开发者B发现开发者A代码里的一个bug,修好后提交到开发环境 开发者B修bug时写出了一个bug,只好返回原来版本(即下面要说的checkout)修bug

总之, git是一个在不断更新产品/修复bug过程中倒腾版本的东西 当然,也可以和github.com或gitee.com等代码托管平台(远程仓库)配合

VSCODE 扩展开发 01

此文章的 撰写时间 撰写日期 绝对有问题

此文章的部分图片可能无法加载。这是因为大概这一版的博客搭建在云服务器上所以图片没有用图床
为什么呢?难道云服务器流量不要钱吗?白嫖图床不好吗?

开新坑了,VSCode: 扩展开发攻略系列主要介绍如何从零开始(不需要Js/TS基础)开发一个VSCode插件

序: 写在前面的废话

由于英语不好谷歌翻译后的官方文档 很迷惑,我就打算自己简单翻翻看 翻一下 顺便加上一些注解

VSCODE 扩展开发 02

此文章的 撰写时间 撰写日期 绝对有问题

此文章的部分图片可能无法加载。这是因为大概这一版的博客搭建在云服务器上所以图片没有用图床
为什么呢?难道云服务器流量不要钱吗?白嫖图床不好吗?

概要

主要借助右键菜单和快捷键讲解一下package.json. 没错我就是标题党

添加右键菜单和快捷键

CSAPP 2020-11-14

此文章的 撰写时间 可能有误

# CSAPP today: 1. 总线(传递字节)
2. IO桥和I/O设备通过控制器或适配器接入总线
3. CPU中有
* 总线接口
* ALU(逻辑算术单元)
* PC(程序计数器, 任何时刻都指向一条指令的地址), 寄存器文件(L0, 最小最快的存储单元)
CPU有(加载,存储,操作和跳转)操作
5. 可以通过DMA直接存储器存取技术直接交流磁盘和主存
4. 存储器有
* L0 寄存器;
* L1高速缓存;
* L2高速缓存;
* L3高速缓存;
* 主存(一组动态随机访问存储器DRAM的集合);
* 磁盘;
* 分布式文件系统/Web服务器文件;

--- 

从上到下, 每一层都更慢 每字节造价更低, 容量更大    
  1. 操作系统(防止失控程序滥用硬件, 提供统一简单的接口抽象给应用程序), 有四个重要概念:
    • 进程给程序一中独占访问cpu的假象, 多个进程互相跳转就是并发运行, 过程叫上下文切换; 上下文切换保存当前进程的上下文(各种状态 比如主存的内容);
    • 虚拟内存给程序一种独占主存的假象, 通过虚拟地址空间实现, 由上至下依次是:
      • 内核空间(程序不能调用内核空间定义的函数)->
      • 用户栈(比如函数调用栈和递归栈, 随着函数进入增大, 函数返回变小)->
      • 公共库(比如printf函数)->
      • 动态开辟的内存 堆(new运算符或malloc函数,可以变大变小)->
      • 读写数据-(全局变量)->
      • 程序本身的内存(固定的)
    • 文件是一个字节序列, 一切设备 I/O设备都可以看成文件; 通过这个概念可以方便的进行不同系统的操作, 如磁盘内容处理, 这一切通过unix I/O接口实现.

为什么不往下读了? 下面有数学