Linux操作系统
文章平均质量分 62
番茄都是西红柿
大家一起交流学习啊~
展开
-
Linux第一课,你所不知道的快捷键
Linux操作系统基本简单操作1.uname-a 查看操作系统版本2.setup 查看网络配置3. ls 查看目录下的文件4.man 查看命令,显示文档信息5.H 跳至文本顶端6.L 跳至文本末端7.M原创 2017-12-02 19:40:02 · 233 阅读 · 0 评论 -
Linux操作系统下webbench的安装和简单使用
Webbench:是有名的网站压力测试工具,它是由 Lionbridge公司开发。Webbech能测试处在相同硬件上,不同服务的性能以及不同硬件上同一个服务的运行状况。webBech的标准测试可以向我们展示服务器的 两项 内容:每秒钟相应请求数和每秒钟传输数据量。webbench不但能具有便准 静态页面的测试能力,还能对 动态页面(ASP,PHP,JAVA,CGI)进 行测试的能力。还有就是他支...原创 2018-09-18 00:21:33 · 856 阅读 · 0 评论 -
GET和POST区别
一、原理区别 一般我们在浏览器输入一个网址访问网站都是GET请求;再FORM表单中,可以通过设置Method指定提交方式为GET或者POST提交方式,默认为GET提交方式。 HTTP定义了与服务器交互的不同方法,其中最基本的四种:GET,POST,PUT,DELETE,HEAD,其中GET和HEAD被称为安全方法,因为使用GET和HEAD的HTTP请求不会产生什么动作。不会产生动作意味着GET...转载 2018-09-07 00:40:32 · 19988 阅读 · 1 评论 -
三次握手和四次挥手
TCP三次握手和四次挥手的全过程 TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:位码即tcp标志位,有6种表示:SYN(synchronous建立连接)ACK(acknowledgement 表示响应、确认)PSH(push表示有DATA数据传输)FIN(finish关闭连接)RST(reset表示连接重置)URG(urge...原创 2018-05-18 22:34:19 · 199 阅读 · 0 评论 -
死锁
1.死锁:如果一组进程中的每一个进程都在等待仅由该组进程中的其它进程才能引发的事件,那么该组进程是死锁的。2.产生死锁的原因:(1)竞争不可抢占性资源。(2)竞争可消耗资源。 当系统中供多个进程共享的资源如打印机,公用队列等,其数目不足以满足诸进程的需要时,会引起诸进程对资源的竞争而产生死锁。(3)进程推进顺序不当。 进程在运行过程中,请求和释放资源的顺序不当,也同样会...原创 2018-05-18 22:11:54 · 121 阅读 · 0 评论 -
生产者和消费者
一、生产者消费者模型 在实际的开发中,经常会碰到如下场景:某个模块负责生产数据,这些数据由另一个模块来负责处理。产生数据的模块就形象的称为生产者,而处理数据的模块就称为消费者。只有生产者和消费者还不够,这个模型还必须要有一个缓冲区处于生产者和消费者之间,作为中介。生产者把数据放入缓冲区,而消费者从缓冲区中取出数据。 二、为什么要使用生产者消费者模型 1、解耦 假设生产者和消费者...原创 2018-05-18 22:06:16 · 580 阅读 · 0 评论 -
I/O复用的三种方法
select、poll、epoll这三组I/O复用系统调用都能同时监听多个文件描述符,他们都通过timeout参数指定要等待的时间。直到事件就绪时返回,返回值就是就绪的文件描述符的数量。下面我们从事件集、最大支持文件描述符数量,工作模式和具体实现方面比较一下他们的异同:1、事件集 select的参数没有将文件描述符和事件绑定,他仅仅是一个文件描述符的集合,所以select需要分别用三个...原创 2018-05-18 22:00:16 · 441 阅读 · 0 评论 -
线程安全与可重入
1、什么是线程安全 当一个函数被多个线程反复调用的时候,他会一直产生正确的结果,那么这个函数就是线程安全的。线程安全函数解决了多个线程调用函数时访问临界资源的冲突问题。2、可重入 在多线程或有异常控制流的情况下,当某个函数运行到中途时,控制流有可能被打断去执行另一个函数,而这”另一个函数”有可能是他本身,如果在这种情况下不会出现问题,比如与说数据或状态不被破坏,而且行为可预期,那么这个...原创 2018-05-18 21:56:22 · 428 阅读 · 0 评论 -
进程组与作业、会话之间的关系
一、进程组、作业、会话 1.进程组(process group) 每个进程除了有一个进程ID(保存在PCB当中),还属于一个进程组。进程组由一个或多个进程组成,通常和一个作业相关联,可以接收来自同一终端的各种信号。每个进程组有一个唯一的进程组ID。 每个进程组都有一个组长进程,组长进程的ID等于组ID。 组长进程可以组建一个进程组。只要进程组中有一个进程存在,这个进程组就存在。 2.作业(job)...原创 2018-05-18 21:45:11 · 376 阅读 · 0 评论 -
linux中的kill命令
kill:指定将信号发送给某个进程,常用来杀掉进程,可以通过ps、top命令来查看进程在默认情况下:采用编号为15的TERM信号。TERM信号将终止所有不能捕获该信号的进程。对于那些可以捕获该信号的进程就要用编号为9的kill信号,强行“杀掉”该进程。可以使用kill -l 来列出所有型号名称,如下图所示:其中常用的信号,如下所示:HUP 1 终端断...原创 2018-04-17 16:26:55 · 1149 阅读 · 0 评论 -
linux系统下的进程调度算法
Linux进程调度概述 Linux系统支持用户态进程和内核线程,需要说明的是,Linux没有提供用户态线程支持,实现用户态线程需要引入第三方线程库。 操作系统进程调度是整个操作系统理论的核心,在设计进程调动机制需要考虑的具体问题主要有: 1)调度的时机:在什么情况下,什么时候进行调度。 2)调度的“政策”(policy):根据什么准则挑选下一个进入运行的进程。 3)调度的方式:是“可剥...原创 2018-04-02 20:12:10 · 1454 阅读 · 0 评论 -
Linux环境下的进度条和彩色进度条
#include<stdio.h>#include<unistd.h>int main(){ char buf[100]={0}; size_t i=0; const char* label="-/|\\";//旋转条 for(;i<50;++i) {原创 2018-03-26 09:56:05 · 137 阅读 · 0 评论 -
Linux环境中task_struct结构体中的各个字段的含义
task_struct结构体 字段介绍Linux内核通过一个被称为进程描述符的task_struct结构体来管理进程, task_struct是Linux中的【进程控制块PCB结构】的具体数据结构 这个结构体包含了一个进程所需的所有信息。它定义在linux-2.6.38.8/include/linux/sched.h文件中。 下面对task_struct这个结构体 进行各个字段的详细介绍...原创 2018-03-13 16:58:34 · 1138 阅读 · 0 评论 -
Makefile详解
**makefile很重要什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会...转载 2018-10-04 15:38:53 · 914 阅读 · 0 评论