
操作系统
五道口纳什
wx公众号/B站:五道口纳什
展开
-
进程间通信 IPC、LPC、RPC
原文请见:进程间通信IPC、LPC、RPC进程间通信(IPC,Inter-Process Communication),指至少两个进程或线程间传送数据或信号的一些技术或方法。进程是计算机系统分配资源的最小单位。每个进程都有自己的一部分独立的系统资源,彼此是隔离的。为了能使不同的进程互相访问资源并进行协调工作,才有了进程间通信。这些进程可以运行在同一计算机上或网络连接的不同计算机上。 进程间通信技术包转载 2016-03-14 12:54:33 · 4954 阅读 · 0 评论 -
windows “文件大小”与“占用空间”、文件系统与文件拷贝
0. 文件大小与占用空间“文件大小”和“占用空间”的差别首先需要明确的是,“文件大小”代表着文件的真实大小(文件内容实际包含的全部字节数),“占用空间”往往略大于“ 文件大小”,如下图所示: “占用空间”表示为计算机磁盘为存储该文件,所需分配的存储空间,显然“占用空间”必须不小于“文件大小”。事实上,windows 采用 NTFS 和 FAT 的文件系统管理磁盘文件,所有文件系统都是基于簇(分原创 2017-06-03 17:38:11 · 5431 阅读 · 0 评论 -
dot-files/directories 点开头的文件或文件夹(windows/linux)
What’s so special about directories whose names begin with a dot?不管是 windows 系统,还是类 linux 系统,以点开头的文件或者文件夹,尤其是以点开头的文件,常常用来表示用户对某应用程序的配置文件,且这些以点开头的文件或者文件夹通常位于用户的家目录原创 2017-05-07 23:36:58 · 3414 阅读 · 0 评论 -
进程与线程
操作系统的设计,因此可以归结为三点:-(1)以多进程形式,允许多个任务同时运行;-(2)以多线程形式,允许单个任务分成不同的部分运行;-(3)提供协调机制,一方面防止进程之间和线程之间产生冲突,另一方面允许进程之间和线程之间共享资源。References[1] 进程与线程的一个简单解释原创 2016-03-14 12:55:50 · 1122 阅读 · 0 评论 -
操作系统的 (program)loader(程序加载器)
在计算机科学中,加载器(也叫程序加载器)属于操作系统的一部分,用于加载程序(programs)和库(libraries)。加载器是执行程序和代码必不可少的组件,正是它负责将程序送入内存,为程序的运行提供准备。加载的工作一旦完成,操作系统才会移交控制权给被加载的程序代码以执行该程序。嵌入式系统无需加载器,代码可直接在 ROM 中执行。特别地,为了加载操作系统本身,在 booting(自举)的过程中,还原创 2017-05-13 22:31:54 · 4071 阅读 · 0 评论 -
多道编程与多用户环境
1. 多道编程为了提高计算机 CPU 执行的效率(或者说系统的吞吐量),需要多道编程的编程,于是人们在操作系统中引入了进程的概念。如果一个进程有 20% 的时间使用 CPU 进行计算,另外 80% 的时间用来进行 I/O:如果是单道编程,CPU 的利用率只有 20%;如果同时运行两个一样的进程,即所谓的 2 道编程,则 CPU 利用率将提高为 36%(对立事件,1-0.8*0.8=0.36)三原创 2016-09-21 17:45:31 · 1332 阅读 · 0 评论 -
unix shell(壳)的简单实现
用户程序通过调用操作系统提供的系统调用(system call)API 来获得操作系统提供的各种服务。但使用 API 需要手动编写程序。对于不编程序、且需要与操作系统进行交互的用户,又如何使用操作系统的服务呢?为了向那些不编程的用户提供服务,操作系统提供了一个壳(shell)来与用户交互。 每个操作系统都会提供某种壳以便与用户进行交互。正如蛋壳(eggshell)之于内部的蛋清(egg white)原创 2017-03-10 18:21:27 · 1705 阅读 · 1 评论 -
(操作系统)系统调用
系统调用知识一般在操作系统编程或系统编程的课程中讨论;0. 基本介绍操作系统本质上是一个系统程序,即为别的程序提供服务的程序。操作系统是以系统调用(system call)的方式提供服务的。系统调用就是操作系统提供的应用程序接口(Application Programming Interface,API), 用户程序即可通过调用这些 API 获得操作系统的服务;例如,如果用户程序需要进行读磁原创 2017-03-08 15:37:25 · 2110 阅读 · 0 评论 -
Linux 磁盘管理
1. LVM(logical volume manager)Linux环境下对磁盘分区进行管理的一种机制。为什么要提出LVM的概念和机制?Linux用户安装 Linux 操作系统时遇到的一个常见的难以决定的问题就是如何正确地评估各分区大小,以分配合适的硬盘空间。普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,当一个逻辑分区存放不下某个文件时,这个文件因为受上层文件系统的限制,也不能跨越多原创 2017-06-04 22:14:12 · 937 阅读 · 0 评论