随笔分类 - 操作系统
摘要:Unix系统有5种IO模型,这些IO模型的目的是为了提高服务器能够并行处理的连接数,而不是提高程序的执行性能。 阻塞IO:应用程序调用一个IO函数导致阻塞,在数据准备好前一直阻塞。 非阻塞IO:当所请求的I/O操作无法完成时,进程不休眠,轮询代替阻塞,在内核数据准备期间可以执行其他事情,但是不停轮询
阅读全文
摘要:在linux系统中,文件、目录的操作权限可以分为 r(读):4 w(写):2 x(执行):1 假设和值为7,7=4+2+1,代表着rwx三个权限都有;假设和值为6=4+2,代表着rw两个权限不可执行。以此类推。 而777,代表着最高权限。如果某文件被赋予了777权限,表示该文件允许文件的拥有者、文件
阅读全文
摘要:背景介绍: 在多线程的环境里,如果共享资源没有上锁,将会出现共享数据混乱的情况。 在单核CPU系统里,系统以时间片调度的方式让多个程序轮流使用处理器,造成了【并发】的假象。 在进程/线程并发执行的过程中,进程/线程之间存在协作的关系,比如互斥、同步。 什么叫进程互斥? 两个或两个以上的进程,不能同时
阅读全文
摘要:什么是事务? 事务提供一种机制,能将一个活动涉及的所有操作纳入到一个不可分割的执行单元,所有的操作均正常执行的情况下方能提交,只要任一操作失败,都将导致事务整体回滚。 什么是分布式系统? 分布式系统是由一组通过网络进行通信、为了完成共同的任务而协调工作的计算机节点组成的系统。 什么是分布式事务? 当
阅读全文
摘要:线程锁: 主要用来给方法、代码块加锁。当某个方法或代码块使用锁是,同一个时刻至多仅有一个线程在执行该段代码。当有多个线程访问同一对象的加锁方法/代码块时,同时只有一个线程在执行,其余线程必须等待当前线程执行完后才能执行该代码段。(比如 php 中的函数中的static变量) 进程锁: 为了控制同一操
阅读全文
摘要:进程间的通信叫 IPC (InterProcess Communication),指在不同进程之间传播或交换信息。 IPC 的方式 有 管道(无名管道和命名管道)、消息队列、信号量、共存存储、Socket(支持不同主机上的两个进程IPC) 管道 在内核中申请一块固定大小的缓冲区,程序有读写权利,它是
阅读全文
摘要:部署服务器分为7步 创建主机(可考虑云服务) 创建用户 安装运行环境(如php环境) 将项目同步至服务器(git同步) 安装进程管理程序 使用ip和端口调试,使用Nginx作为反向代理服务器 使用域名访问 当然我不是运维,所以部署服务器暂时作为一个了解,不需要太深研究。 参考来自https://ww
阅读全文
摘要:什么是进程? 进程(Process)是正在运行的程序的实例,是程序的实体,由程序、数据和进程控制块(PCB Processing Control Block)三部分组成。进程有自己的地址空间,包括文本区域(存储处理器执行的代码)、数据区域(存储变量和执行期间动态分配的内存)、堆栈区域(存储活动过程调
阅读全文