• docker 入门教程(一):基本用法

    Docker允许用户将基础设施中的应用单独分割出来,形成更小的颗粒,从而提高交付软件的速度。 Docker容器与虚拟机类似,但二者在原理上不同。容器是将操作系统层虚拟化,虚拟机则是虚拟化硬件,因此容器更具有便携性、更能高效地利用服务器。 本文基于do...
  • git 入门教程(一):基本用法

    Git是一个免费的开源分布式版本控制系统,旨在以快速和高效的方式处理项目的所有内容。 本博客是对 pro git 的学习笔记 ,并配合一些自己使用的理解。 一 、基本模型 在这一篇文章不会对git的模型进行深入的介绍(后续会具体探讨),读者只需要知...
  • 【考研】计组 (二): 数据的表示和运算

    经过做题的实践发现,对于原码、补码、移码等运算除了掌握计算机基本的运算规则以外还有一些共性的规律,利用这些规律可以更快速的解题,将我总结的规律记录如下。 一、定点数编码解题技巧 1.0 一些常识 28=2562^8 = 25628=256 21...
  • C语言格式化输出问题

    在日常使用中C语言时,对于命令行工具输出格式化控制非常重要,虽然每天都在用printf但是对其具体的使用还是很容易忘记,于是做如下总结 在 C 语言中,格式化打印主要通过 printf、sprintf、snprintf、fprintf 等函数实现,它...
  • 重新学习C语言内存管理

    前言 在学习完操作系统MIT6.828后重新学习C语言的内存管理问题。 关于标准库 malloc 和 free 在C标准库中对内存的管理是通过为每个空闲内存提供一个小的数据结构来管理的,大致的伪代码如下 1234struct block ...
  • 【CS61C】Lab2 实验解析

    前言 本人学习的是 2020 fall版的CS61C,本文将对Lab2解题思路做大致介绍,具体代码可以参考我的仓库 解题思路 Exercise 1: Bit Operations 三道位运算的题目中值得一说的是第二道,函数接口如下 123// ...
  • CSAPP深入理解计算机系统 Lab4(architecture Lab) 详解

    本文以记录个人学习CSAPP的过程,使用blog的方式记录能更专注的思考,不至于走马观花式的做实验。同时我关注的不仅是实验本身还有实验中使用工具的学习。 实验说明 在官方网站上其实有两个版本的architecture Lab,这里我们使用的是C...
  • CSAPP深入理解计算机系统 Lab3(attack Lab) 详解

    本文以记录个人学习CSAPP的过程,使用blog的方式记录能更专注的思考,不至于走马观花式的做实验。同时我关注的不仅是实验本身还有实验中使用工具的学习。 实验说明 本实验通过向两个程序中进行攻击已达到攻击目的,通过这个实验能了解到通过缓冲区溢出...
  • CSAPP深入理解计算机系统 Lab2(bomb Lab) 详解

    本文以记录个人学习CSAPP的过程,使用blog的方式记录能更专注的思考,不至于走马观花式的做实验。同时我关注的不仅是实验本身还有实验中使用工具的学习。 实验说明 本实验通过逆向的方式模拟拆炸弹的过程,炸弹共有6道锁,我们需要逐一破解每一道锁,...
  • CSAPP深入理解计算机系统 Lab1(Data Lab) 详解

    本文以记录个人学习CSAPP的过程,使用blog的方式记录能更专注的思考,不至于走马观花式的做实验。 实验说明 在动手实验之前建议仔细阅读实验提供的文档以及bits.c前的注释。本实验对应CSAPP的第二章,是对位运算的处理和应用。在解决这些问...