摘要:
每个网络应用都是基于客户端-服务器模型的。根据这个模型,一个应用是由一个服务器和一个或多个客户端组成的。服务器管理资源,以某种方式操作资源,为它的客户端提供服务。客户端-服务器模型中的基本操作是客户端-服务器事务,它是由客户端请求和跟随其后的服务器响应组成的。 客户端和服务器通过因特网这个全球网络来 阅读全文
摘要:
很多高级语言都提供了执行 I/O 的较高级别的函数。为什么我们还要学习 Unix I/O? 原因:1、由于 I/O 和其他系统概念之间有循环依赖关系,故了解 Unix I/O 将帮助我们理解其他的系统概念 2、有些特殊情况,只能或最好使用 Unix I/O。比如标准 I/O 库没有提供读取文件元数据 阅读全文
摘要:
为了更加有效地管理内存并且少出错,现代系统提供了一种对主存的抽象概念,叫做虚拟内存(VM)。 虚拟内存提供了三个重要的能力: (1)它将主存看成是一个存储在磁盘上的地址空间的告诉缓存,在主存中只保存活动区域,并根据需要在磁盘和主存之间来回传送数据,通过这种方式,它高效地使用了主存 (2)它为每个进程 阅读全文
摘要:
mysql 版本:5.5.13 理论部分 连接概述: 根据连接条件(on 子句),将两张表的相关内容组织成一个结果集 内连接与左外链接的区别描述: 使用内连接时,不符合连接条件的数据,(不管是左表中的还是右表中的)都不会被组织到结果集中 使用左外连接时,对于不符合连接条件的数据,左表中的内容依然会被 阅读全文
摘要:
关于进程,需要关注其提供给应用程序的两个关键抽象: 1、一个独立的逻辑控制流,它提供一个假象,好像我们的程序独占地使用处理器 2、一个私有的地址空间,它提供一个假象,好像我们的程序独占地使用内存系统 逻辑控制流: 如果想用调试器单步执行程序,我们会看到一系列的程序计数器(PC)的值,这些值唯一地对应 阅读全文
摘要:
假设名叫 A 和 B 的两个人要进行通信,那么他们两人之间,首先要确保通信顺畅。 而确保通信顺畅,就要从 3 个维度,确定 8 个能力 3 个维度分别是: 1、人知道(A 知道、B 知道) 2、人(A、B) 3、能力(发出、收到) 那么对应的 8 个能力就分别是:(有点绕,可直接看下面的表格) 能力 阅读全文
摘要:
本章主旨 第八章的目的是阐述清楚应用程序是如何与操作系统交互的(之前章节的学习是阐述应用程序是如何与硬件交互的) 异常控制流 异常控制流,即 ECF(exceptional contril flow) ECF 的重要性 ECF 对于程序员的重要性体现在以下几点: 理解 ECF 将帮助我们理解重要的系 阅读全文
摘要:
病毒防护: 火绒安全 笔记: 为知笔记、印象笔记 文件搜索: Listary 开发 IDE: IDEA 测试接口工具: postman 数据库: Navicat for MySQL、PowerDesigner 邮件管理: Foxmail 服务器连接: Xshell、Xftp 记事本: Notepad 阅读全文
摘要:
作为web程序员,该掌握的 linux 命令有哪些,稍微高级点的? - 刘志军的回答 - 知乎 https://www.zhihu.com/question/64063454/answer/217773144 答案中提到一本书:《The Linux Command Line》,中文版叫《快乐的 Li 阅读全文
摘要:
为什么要学习存储器的层次结构? 如果我们理解了系统是如何将数据在存储器层次结构中上上下下移动的,那么我们就可以编写自己的应用程序,使得它们的数据项存储在层次结构较高的地方,在那里 CPU 能更快地访问到它们。 局部性原理 计算机程序倾向于引用临近于其他最近引用过的数据项的数据项,或者最近引用过的数据 阅读全文