Linux
夏天的呆子
这个作者很懒,什么都没留下…
展开
-
线程
一.基本概念: 线程就是运行在进程上下文中的逻辑流,每个线程都有它自己的线程上下文,包括一个唯一的整数线程ID,栈,栈指针,程序计数器,通用目的寄存器和条件码。所有的运行在一个进程里的线程共享该进程的整个虚拟地址空间。1.进程与线程: 一个进程实际上可以由多个称为线程的执行单元组成,每个线程都运行在进程的上下文中,并共享同样的代码和全局数据。 在一个进程中,可能有一个或者多个线程原创 2017-06-06 20:24:03 · 300 阅读 · 0 评论 -
粘滞位
在了解粘滞位之前,我们先来回忆一下一个文件具有的三种权限,在Linux下有一种一切皆文件的思想,所以,这里的文件包含普通文件和目录了: 一、文件权限: r :可以读这个文件的内容 w :可以编辑这个文件的内容,包括增加和删除文件的具体内容 x :可执行权限。(需注意:在windouw下,文件的可执行权限是通过文件的扩展名表示出来的,而在Linux下是由这个X权限所决定的)。 二、原创 2017-09-06 19:40:18 · 239 阅读 · 0 评论 -
CRC检验解析
CRC即循环冗余校验码(Cyclic Redundancy Check):是数据通信领域中最常用的一种差错校验码,其特征是信息字段和校验字段的长度可以任意选定。其根本思想就是先在要发送的帧后面附加一个数(这个就是用来校验的校验码,但要注意,这里的数也是二进制序列的,下同),生成一个新帧发送给接收端。当然,这个附加的数不是随意的,它要使所生成的新帧能与发送端和接收端共同选定的某个特定数整除(注意原创 2017-09-05 22:28:17 · 667 阅读 · 0 评论 -
守护进程
守护进程是生存期长的一种进程。常常在系统引导装入时启动,仅在系统关闭时才终止。因为没有控制终端,所以说是在后台运行的 守护进程不受用户登录和销毁的控制,通常以d结尾表示为daemon,守护进程是孤儿进程。当前作业与终端无关(因为守护进程自成一个会话,所以不受终端控制) 相关指令 ps -axj -a 显示当前用户其他用户所拥有的进程状态 -x 显示有和没有终原创 2017-09-05 22:27:08 · 183 阅读 · 0 评论 -
多线程编程
一、什么是线程??? 线程是在进程内部运行的控制流程。多线程的控制流程可以长期共存,操作系统会在各线程之间调度和切换,就像在多个进程之间调度和切换一样。 由于同一个进程的多个线程共享同一地址空间地址空间,因此代码段和数据段都是共享的,如果定义一个函数,在各线程之中都可以调用,如果定义一个全局变量,在各线程中都可以访问到的,除此之外,线程还共享以下资源: 1、文件描述符表 2、每种信号原创 2017-07-05 08:35:39 · 197 阅读 · 0 评论 -
生产者/消费者问题
用抽象的术语,定义如下的生产者和消费者函数:producerwhile(true) {/* produce item v */;b[in]=v;in+=;}consumerwhile(true) {while(in<=out)/* do nothing*/;w=b[out];out++;/*consume item w */;}下图是缓冲区b的结构: 使用二元信号量解决无限原创 2017-06-12 09:34:17 · 669 阅读 · 0 评论 -
终端&守护进程&作业
一、进程组,作业,会话 1、进程组 每个进程除了有一个进程ID之外,还属于一个进程组。进程组是多个进程的集合,同一个进程组的进程的组ID相同,每一个进程组都有一个唯一的组ID。 每个进程组都有一个组长,组长的pid与gid相同。组长可以创建一个进程组,创建该组中的进程,然后终止。只要进程组内任意一个进程存在,那么这个进程组就存在,与组长进程是否终止无关。 通常进程组都与作业相关联,可原创 2017-07-02 16:18:02 · 224 阅读 · 0 评论 -
信号量
一.基本概念: ◐信号量:用于进程间传递信号的一个整数值,在信号量上只有三种操作,初始化,递减和增加,这三种操作都是原子操作。 ◐二元信号量:只取0值和1值的信号量 ◆为达到预期的效果,可把信号量看做是一个具有整数值的变量,在它之上定义三个操作: ①一个信号量可以初始化成非负数 ②semWait操作使信号量减1,如果值变成负数,则执行semWait的进程被阻塞。否则进程继续执行; ③se原创 2017-07-01 12:05:23 · 288 阅读 · 0 评论 -
死锁
1.概念: 信号量引入了一种潜在的令人厌恶的运行时错误,叫做死锁。“死锁”是一组相互竞争系统资源或进行通信的进程间的“永久”阻塞。2.死锁产生的四个必要条件: ①互斥 一次只有一个进程可以使用一个资源。其他进程不能访问已分配的给其他进程的资源。 ②占有且等待 当一个进程等待其他进程时,继续占有已经分配的资源。 ③不可抢占 不能强行抢占进程已占有的资源。 ④循环等待 存在一个封闭的进程链原创 2017-06-08 10:35:55 · 234 阅读 · 0 评论 -
Web性能压力测试工具之WebBench
背景: 在运维工作中,压力测试是一项很重要的工作,比如在一个网站上线之前,能承受多大访问量,大访问量下性能如何等这些数据指标好坏将直接影响用户体验。另外,在所有压力测试中存在一个共性那就是压力测试的结果与实际负载结果不会完全相同,再好的压力测试工作也不能保证100%和线上性能指标相同。针对上述问题,我们必须想方设法做模拟,因此,压力测试非常有必要,因为有了这些数据我们就能对自己所维护的平台做到心原创 2017-08-29 15:08:54 · 202 阅读 · 0 评论