摘要: 一些数据处理相关的指令 grep 用于查找文件里符合条件的字符串 sed sed 是一个基于文本编辑器ed构建的”流编辑器” 。 在 sed 中,可以利用一些简短的命令来修改文件,而不是直接操作文件的内容。 最常用的是 s,即替换命令。s 命令的语法如下:s/REGEX/SUBSTITUTION/, 阅读全文
posted @ 2021-09-25 00:07 zju_cxl 阅读(216) 评论(0) 推荐(1) 编辑
摘要: Modal editing Vim的设计以大多数时间都花在阅读、浏览和进行少量编辑改动为基础,因此它具有多种操作模式: 正常模式 :在文件中四处移动光标进行修改 插入模式:插入文本 替换模式:替换文本 可视化(一般,行,块)模式:选中文本块 命令模式:用于执行命令 在不同的操作模式下,键盘敲击的含义 阅读全文
posted @ 2021-09-22 14:25 zju_cxl 阅读(261) 评论(0) 推荐(0) 编辑
摘要: Shell Scripting 变量、赋值、字符串 在Bash中为变量赋值的语法是foo=bar,访问变量中存储的数值,其语法为 $foo。 需要注意的是,foo = bar (使用空格隔开)是不能正确工作的,因为解释器会调用程序foo 并将 = 和 bar作为参数。(在shell脚本中使用空格会起 阅读全文
posted @ 2021-09-20 15:04 zju_cxl 阅读(405) 评论(0) 推荐(0) 编辑
摘要: shell如何寻找诸如echo、date的命令? shell 是一个编程环境,所以它具备变量、条件、循环和函数。**在 shell 中执行命令时,实际上是在执行一段 shell 可以解释执行的简短代码。**如果用户要求 shell 执行某个指令,但是该指令并不是 shell 所了解的编程关键字,那么 阅读全文
posted @ 2021-09-19 17:57 zju_cxl 阅读(644) 评论(0) 推荐(0) 编辑
摘要: 系统调用概述 系统调用:运行在用户空间的程序向操作系统内核请求需要更高权限运行的服务。系统调用提供用户程序与操作系统之间的接口。 系统调用需要了解的点: 系统调用将处理器从用户态切换到核心态,以便 CPU 访问受到保护的内核内存。 每个系统调用都由一个唯一的数字来标识。 系统调用可以有一套参数,用于 阅读全文
posted @ 2021-09-18 23:22 zju_cxl 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 操作系统设计原则 操作系统的重要设计原则:策略与机制的分离 策略(Policy):要做什么 —— 相对动态 机制(Mechanism):怎么做 —— 相对静态 操作系统可仅通过调整策略来适应不同应用的需求 例子 策略 机制 登录 什么用户、以什么权限登录 输入处理、策略文件管理、桌面启动加载 调度 阅读全文
posted @ 2021-09-16 16:18 zju_cxl 阅读(450) 评论(0) 推荐(0) 编辑
摘要: 什么是操作系统 操作系统是在硬件和应用之间的软件层 "操作系统是管理硬件资源、控制程序运行、改善人机界面 和为应用软件提供支持的一种系统软件。" [计算机百科全书(第2版)] 操作系统 = 管理 + 服务 操作系统为应用提供的一些服务: 为应用提供计算资源的抽象 CPU:进程/线程,数量不受物理CP 阅读全文
posted @ 2021-09-16 08:49 zju_cxl 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 进程调度概述 定义 进程存在的核心目的:虚拟化CPU,从而支持多个进程在少量的物理CPU上运行(每个进程以为它独享一个CPU)。 进程调度就是选择一个可用的进程(可能从多个可用进程集合中选择)到CPU上执行。单处理器系统从来不会有超过一个进程在运行。如果有多个进程,那么余下的则需要等待CPU空闲并重 阅读全文
posted @ 2021-09-08 23:32 zju_cxl 阅读(452) 评论(0) 推荐(0) 编辑
摘要: 进程综述 定义 进程是正在执行程序的实例,包括程序计数器、寄存器和变量的当前值。 进程不只是程序代码,程序代码称为文本段(代码段),还包括当前活动,通过程序计数器的值和处理器寄存器的内容来表示。此外,进程还包括进程堆栈段(临时数据、函数参数、局部变量、地址)和数据段(包括全局变量。还可能包括堆(he 阅读全文
posted @ 2021-09-08 00:30 zju_cxl 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 操作系统的大致内容的思维导图: 操作系统在传统意义上都会有以下内容: 进程与线程 内存管理 文件系统 I/O 死锁 操作系统导论将操作系统视作三个简单的部分:虚拟化、并发、持久化。我认为是比较合理的,结合操作系统导论和现代操作系统的内容也能更好的学习操作系统。 reference [1] 操作系统导 阅读全文
posted @ 2021-09-06 13:44 zju_cxl 阅读(166) 评论(0) 推荐(0) 编辑
摘要: I/O设备综述 I/O设备定义 I/O设备是硬件中由人(或其他系统)使用与计算机进行通信的部件。 例如,键盘或鼠标是计算机的输入设备,而监控器和打印机是输出设备。计算机之间的通信设备(如电信调制解调器和网卡)通常运行输入和输出操作。操作系统需要控制计算机的所有I/O设备。 I/O设备划分 根据信息交 阅读全文
posted @ 2021-09-06 01:05 zju_cxl 阅读(695) 评论(0) 推荐(0) 编辑
摘要: Peterson算法概述 Peterson算法是一种实现进程/线程间互斥访问临界区的算法。(线程间共享内存地址空间,进程需要采用共享内存实现) 关键术语: 临界区:一段代码,进程/线程在这段代码中进程将访问共享资源,当另外一个进程已在这段代码运行时,其他进程就不能在这段代码中运行。 互斥:当一个进程 阅读全文
posted @ 2021-08-28 16:47 zju_cxl 阅读(1284) 评论(0) 推荐(1) 编辑
摘要: 基于socket的网络应用概述 以一个C/S结构的网络应用为例,客户端和服务器端使用socket通信的流程图如下: 从Linux内核的角度来看,一个套接字就是通信的一个端点。从Linux程序的角度来看,套接字就是一个有相应描述符的文件。(注:Linux中有普通文件、目录、套接字三种,Linux中一切 阅读全文
posted @ 2021-08-27 15:58 zju_cxl 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 概述 虚拟化 CPU的概念:操作系统需要以某种方式让许多任务共享物理CPU,让它们看起来像是同时运行。 在本节需要解决的关键问题是:如何高效、可控地虚拟化 CPU? 解决方法:采用受限直接执行(Limited Direct Execution, LDE)机制 直接执行的概念 直接执行:直接在CPU上 阅读全文
posted @ 2021-08-24 15:46 zju_cxl 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 外部引脚及其功能 8088是与8086同时代的微处理器,具有完全相同的指令系统。 两者唯一区别为:在硬件结构上,8088与存储器和I/O接口进行数据传输的外部数据总线宽度为8位,而8086数据总线为16位。 其引脚图如下: 一些有用的引脚信号如下: 引脚 定义 A16/S3~A19/S6 分时复用地 阅读全文
posted @ 2021-08-22 04:57 zju_cxl 阅读(2763) 评论(0) 推荐(0) 编辑
摘要: 倒排索引(inverted index),是一种数据库索引,用于存储从内容到文档的映射。使用倒排索引可以很好的支持全文搜索,被广泛应用于信息检索(搜索引擎、数据库)中。 阅读全文
posted @ 2021-08-21 23:18 zju_cxl 阅读(481) 评论(0) 推荐(0) 编辑
摘要: 主索引 & 辅助索引 主索引 定义:将主文件分块,每一块对应一个索引项。每个存储快的第一条记录,又称为锚记录。主索引是按照索引字段值进行排序的一个有序文件,通常建立在有序文件的基于主码的排序字段上。以Mysql的MyIsam存储引擎为例: 辅助索引 定义:定义在主文件的任意一个或者多个非排序字段上的 阅读全文
posted @ 2021-08-21 20:23 zju_cxl 阅读(890) 评论(0) 推荐(1) 编辑
摘要: 大端 & 小端 大小端之定义 计算机系统是以字节为单位的,每个地址单元都对应着一个字节,一个字节为8bit。 在几乎所有的机器上,对于跨越多字节的程序对象,往往都是被连续存储的,对象的地址为所使用的字节中最小的地址。 在多字节的程序对象中,对不同的字节有两种排列方式:大端和小端。(大小端之争就如打鸡 阅读全文
posted @ 2021-08-12 22:57 zju_cxl 阅读(467) 评论(0) 推荐(0) 编辑
摘要: Linux网络编程,socket地址相关内容 阅读全文
posted @ 2021-08-12 17:00 zju_cxl 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 虚函数指针和虚函数表 虚函数表的定义 多态是由虚函数实现的,而虚函数主要是通过**虚函数表(V-Table)**来实现的。 如果一个类中包含虚函数(virtual修饰的函数),那么这个类就会包含一张虚函数表(vftbl),虚函数表存储的每一项是一个虚函数的地址。在一个对象的内存布局中,指向这张虚函数 阅读全文
posted @ 2021-05-29 21:47 zju_cxl 阅读(323) 评论(0) 推荐(0) 编辑