
操作系统
JackZhangNJU
未来的路还很长
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
一些面试题目
1、信号量 用于进程间传递信号的一个整数值。在信号量上只有三种操作可以进行:初始化,P操作和V操作,这三种操作都是原子操作。P操作(递减操作)可以用于阻塞一个进程,V操作(增加操作)可以用于解除阻塞一个进程。可把信号量视为一个具有整数值的变量,在它之上定义三个操作:一个信号量可以初始化为非负数semWait操作使信号量s减1.若值为负数,则执行semWait的进程被阻塞。否...原创 2018-03-06 18:33:43 · 481 阅读 · 0 评论 -
在 Shell 脚本中调用另一个 Shell 脚本的三种方式
详情参考这个博客,写的很清楚,这个和进程里面的fork,exec很类似原创 2018-08-06 13:25:50 · 987 阅读 · 0 评论 -
硬链接和软链接的区别
原理上:硬链接(hard link):文件A是文件B的硬链接,则A的目录项中的inode节点号与B的目录项中的inode节点号相同,即一个inode节点对应两个不同的文件名,两个文件名指向同一个文件,A和B对文件系统来说是完全平等的。如果删除了其中一个,对另外一个没有影响。每增加一个文件名,inode节点上的链接数增加一,每删除一个对应的文件名,inode节点上的链接数减一,直到为0,inod...转载 2018-03-02 16:07:30 · 609 阅读 · 0 评论 -
如何在Linux中查看占用空间大文件和大文件夹
经常我们需要查看以下Linux系统中占用空间较大的文件和文件夹,将一些不再使用的大文件和大文件夹删除,以免造成空间的浪费,下面我们展示如何如何查找大文件和大文件夹。1.如何查找大文件通过下面的命令我们可以查看当前目录下那些文件超过我们设定的阀值。find -type f -size +100M -print0 | xargs -0 du -h其中100M就是我们设定的阀值,我...原创 2018-03-02 14:44:22 · 2995 阅读 · 0 评论 -
C++中如何在main()函数之前执行操作
main函数执行之前,主要就是初始化系统相关资源:设置栈指针初始化static静态和global全局变量,即data段的内容将未初始化部分的全局变量赋初值:数值型short,int,long等为0,bool为FALSE,指针为NULL,等等,即.bss段的内容 全局对象初始化,在main之前调用构造函数将main函数的参数,argc,argv等传递给main函数,然后才真正运...原创 2018-03-02 14:37:31 · 5717 阅读 · 0 评论 -
fopen /open,read/write和fread/fwrite区别
fopen /open区别UNIX环境下的C 对二进制流文件的读写有两套班子:1) fopen,fread,fwrite ; 2) open, read, write。这里简单的介绍一下他们的区别。 1. fopen 系列是标准的C库函数;open系列是 POSIX 定义的,是UNIX系统里的system call。也就是说,fopen系列更具有可移植性;而open系列只能用在 POSIX ...转载 2018-03-01 14:48:20 · 318 阅读 · 0 评论 -
文件读写:fwrite与fprintf的区别(即二进制方式和文本方式的区别)
fwrite和fprintfC语言把文件看作一个字符(字节)的序列,即由一个一个字符(字节)的数据顺序组成。根据数据的组织形式,可分为ASCII文件和二进制文件。ASCII文件又称为文本(text)文件,它的每个字节放一个ASCII代码,代表一个字符。二进制文件是把内存中的数据按其在内在中的存储形式原样输出到磁盘上存放。fprintf(fp, "%d", buffer); 是将格式化的数据...转载 2018-03-01 13:36:26 · 2733 阅读 · 0 评论 -
Linux基础:信号量和互斥的联系与区别
互斥量(Mutex)互斥量表现互斥现象的数据结构,也被当作二元信号灯。一个互斥基本上是一个多任务敏感的二元信号,它能用作同步多任务的行为,它常用作保护从中断来的临界段代码并且在共享同步使用的资源。 Mutex本质上说就是一把锁,提供对资源的独占访问,所以Mutex主要的作用是用于互斥。Mutex对象的值,只有0和1两个值。这两个值也分别代表了Mutex的两种状态。值为0, 表示锁定状态...原创 2018-03-01 11:07:31 · 774 阅读 · 0 评论 -
操作系统概念 --- 读书笔记 第12章:磁盘调度
FCFS:先来先服务算法: 按请求者的先后次序启动磁盘驱动器,而不考虑它们要访问的物理位置。 FCFS算法根据进程请求访问磁盘的先后顺序进行调度,这是一种最简单的调度算法。该算法的优点是具有公平性。如果只有少量进程需要访问,且大部分请求都是访问簇聚的文件扇区,则有望达到较好的性能;但如果有大量进程竞争使用磁盘,那么这种算法在性能上往往接近于随机调度。所以,实际磁盘调度中考虑一些更为复杂的调...原创 2018-02-20 15:23:57 · 668 阅读 · 0 评论 -
操作系统概念 --- 读书笔记 第9章:虚拟内存
本篇主要讲述页面置换的相关算法总结。在地址映射过程中,若在页面中发现所要访问的页面不在内存中,则产生缺页中断。当发生缺页中断时,如果操作系统内存中没有空闲页面,则操作系统必须在内存选择一个页面将其移出内存,以便为即将调入的页面让出空间。而用来选择淘汰哪一页的规则叫做页面置换算法。9.1 页面置换算法9.1.1 FIFO页置换 FIFO页置换就是记录每一个页的时间,假如存在空闲页,追替...原创 2018-02-20 13:37:26 · 691 阅读 · 0 评论 -
操作系统概念 --- 读书笔记 第7章:死锁
7.1 死锁特征7.1.1 死锁的定义机器特征对于多个进程竞争一定的资源,某个进程申请资源,如果资源不可用就会陷入等待状态,如果所有的进程都处于等待状态,而无法做出其他的改变,那么就陷入了死锁状态,这个就是死锁。如果一个系统中下面4个条件同时满足,那么就会引起死锁:互斥:存在资源一次只能让一个进程使用占有并等待:一个进程至少占用一个资源,并等待另一个资源非抢占:资源是非抢占的...原创 2018-02-19 20:41:30 · 395 阅读 · 0 评论 -
操作系统概念 --- 读书笔记 第6章:进程同步
6.1 临界区问题假设有n个进程Pi,每一个进程都一个代码段称为临界区,在该区中可能改变共同变量、更新一个表、写一个文件等等,这个就是临界区。临界区需要满足下面三项要求: - 互斥(Mutual Exclusion):也即一个进程在临界区执行,其他的进程不允许进去执行。 - 前进(Progress):如果当前需要有进程去临界区执行,同时临界区没有进程在执行,可以选择一个进程去临界区...原创 2018-02-19 16:50:31 · 450 阅读 · 0 评论 -
操作系统概念 --- 读书笔记 第5章:CPU调度
5.1 CPU调度基本概念 5.1.1 抢占调度 && 非抢占调度当CPU空闲的时候,操作系统就要从就绪队列中选择一个进程去执行,其实就是选择PCB,这个是由短期调度程序来调度完成的。CPU的调度可能发生在下面4中情况当一个进程有运行状态切换到等待状态(比如IO请求);当一个进程有运行状态切换到就绪状态(比如终端);当一个进程有等待状态切换到就绪状态(比如IO完...原创 2018-02-17 17:45:50 · 450 阅读 · 0 评论 -
操作系统概念 --- 读书笔记 第4章:线程
4.1 线程线程是CPU使用的基本单员,线程和进程的联系和区别如下:进程是资源分配的基本单员,线程是CPU调度执行的基本单员线性在进程之中,也即一个进程包含多个线程同一个进程中的所有线程共享该进程的资源4.2 多线程模型有些系统同时支持用户线程和内核线程由此产生了不同的多线程模型,即实现用户级线程和内核级线程的连接方式。1) 多对一模型 将多个用户级线程映射到一个内核...原创 2018-02-17 15:29:52 · 379 阅读 · 0 评论 -
操作系统概念 --- 读书笔记 第3章:进程
3.1 进程 3.1.1 什么事进程?进程是一个活动实体,它有一个程序计数器来表示下一个要执行的命令和相关资源的集合,注意程序不是进程,程序是一个被动实体,仅仅是一个代码的集合。3.1.2 进程状态新的::进程正在创建运行:指令正在被执行等待:进程等待某个时间发生(IO完成或收到信号)就绪:进程等待分配处理器终止 :进程完成执行如下图3.1.3 进程控制块 Pro...原创 2018-02-17 14:35:18 · 391 阅读 · 0 评论 -
Linux RedHat使用相关总结
这是一段十分蛋疼的经历,本以为很简单,但是事实中发现了很多的坑,简直令人发指。干的活总结就是:在新系统上装十年前的软件或者十年前的系统安装现在的软件。不过本篇博客主要是掌握了一些linux命令,作为一个总结吧!针对redhat系列,可以通过这个命令查询系统版本cat /etc/redhat-release 当遇到查找文件得时候可以这么做ls hom* 列出hom开头的所有文件f...原创 2018-03-08 10:59:10 · 438 阅读 · 0 评论 -
一般递归与尾递归
参考这个博客一般递归与尾递归原创 2018-08-15 14:15:07 · 388 阅读 · 0 评论