计算机基础学习笔记
计算机基础知识学习笔记,涵盖计算机系统组成原理、汇编语言、操作系统、计算机网络、数据结构等计算机科学基础知识。
PeterChen_
毕业于山东大学计算机系,拥有8年Java开发经验,获得华为RDPM和美国PMP认证,爱好技术,重视业务,看重效率与质量管理,专注于企业数字化转型研究与应用。
展开
-
【深入理解计算机系统·笔记】内存管理之虚拟内存(二)
虚拟内存作为缓存的工具对应存储层的分块的概念,VM系统将虚拟内存也按固定大小分割为虚拟页(VP),对应的物理内存被分割为物理页(PP),物理页也称之为页帧。虚拟页任何时刻都被分为三个不相交的子集:(1) 未分配的:VM系统还未分配(未创建)的页,没有任何数据与之相关联,因此不占用任何磁盘空间。(2) 未缓存的:已被创建的虚拟页,但是还没有缓存到物理内存。(3...转载 2020-02-29 14:30:26 · 288 阅读 · 0 评论 -
【深入理解计算机系统·笔记】内存管理之虚拟内存(一)
进程与其他进程共享CPU和主存,存在一个进程写了另一个进程使用的内存,会引发令人迷惑的错误。为了有效的管理内存并减少出错,现代系统提供了一种对主存的抽象概念——虚拟内存。虚拟内存三个重要能力:(1)将主存视为磁盘空间的高速缓存,在主存中值保存活动区域,并根据需要在磁盘和主存间来回传送数据,高效利用主存;(2)为每个进程提供一致的地址空间,屏蔽了对硬件操作管理的细节,简化了内存管理;...转载 2020-02-29 00:13:11 · 302 阅读 · 0 评论 -
【深入理解计算机系统·笔记】计算机系统中的重要概念
上一篇笔记:【深入理解计算机系统·笔记】hello程序的执行流程上一篇笔记提到,shell程序是如何调配硬件资源,实际上shell程序并没有直接与硬件打交道,与硬件直接交流的是我们耳熟能详的操作系统,shell仅仅是通过调用操作系统暴露出来的接口来使用各类硬件资源。操作系统在操作系统没有面世之前,每一个程序都需要实现对硬件资源的操作,后来人们发现,这样需要写很多重复的代码,效率非常低,...原创 2019-11-17 22:22:16 · 341 阅读 · 0 评论 -
【深入理解计算机系统·笔记】hello程序的执行流程
上一篇笔记:【深入理解计算机系统·笔记】GCC编译过程理解上一篇笔记按照GCC编译的流程示范了hello.c的编译过程,本篇笔记旨在帮助理解hello.c程序运行的过程。在linux系统中执行hello程序需要在shell终端输入以下命令:linux> ./hellohello,worldlinux>shell是一个命令行解释器,当我们在shell终端输入命令...原创 2019-11-17 18:27:58 · 954 阅读 · 0 评论 -
【深入理解计算机系统·笔记】GCC编译过程理解
相关阅读《深入理解计算系统·原书第三版》第一章计算机系统漫游中,将gcc编译c语言程序的过程描述如下:根据书本的讲解手动做了以下逐步编译过程示例:需要编译的源程序:#include<stdio.h>int main(){ printf("hello,world\n"); return 0;}一步完成所有编译过程的命令:gcc -o he...原创 2019-11-06 22:56:25 · 635 阅读 · 2 评论