1、tcpdumpTcpDump是Linux中强大的网络数据采集分析工具之一。用简单的话来定义tcpdump根据使用者的定义对网络上的数据包进行截获的包分析工具。2、tcpdump的总的输出格式为:系统时间 来源主机 端口 > 目标主机.端口 数据包参数3、命令1)默认启动tcpdump普通情况下,直接启动tcpdump将监视第一个网络接口上所有流过的数据包。 监视指定网络接口的数
1、grepgrep是g一种查找过滤工具,grep支持正则表达式2、正则表达式规定一些特殊语法表示字符类、数量限定符和位置关系,然后用这些特殊语法和普通字符一起表示 一个模式,这就是正则表达式。形式:' 表达式内容 '1)字符类. 匹配任意字符的一次出现[] 匹配括号中的任意字符的一次出现- 在[]内表示字符范围^ 例如:[^xy] 匹配除括号内字符之外的任意字符的一次出现[[:digit:]]
1、创建crontab服务并编辑crontab -e内容:执行脚本的时间+所执行的脚本命令+脚本所存放的路径2、检查脚本是否创建成功crontab -l3、启动服务/sbin/service crond start 4、查看是否运行ps -ax | grep cron 5、相关命令 crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的
1、程序2、结果
1、条件测试1)test2)[测试命令:[ -d DIR ] : 如果DIR存在并且是一个目录则为真[ -f FILE ] : 如果FILE存在且是一个普通文件则为真[ -z STRING ] : 如果STRING的长度为零则为真[ -n STRING ] : 如果STRING的长度非零则为真[ STRING1 = STRING2 ] : 如果两个字符串相同则为真[ STRING1 != STRI
1、命令代换反引号`与$()均可执行命令代换,同一条命令的代换,执行的结果是一样的,例如:但是在执行下面的命令却又不一样了呢?用反引号是会输出真正的hostname,但是用$()时只输出命令。2、两者的区别反引号齐本身就对\进行了转义,保留了其本身意思。$()中则不需要考虑\的问题。
1、消费者与生产者生产者与生产者:互斥关系消费者与消费者:互斥关系生产者与消费者:互斥、同步关系2、如何实现多消费者与多生产者代码实现:测试代码:两个消费者,两个生产者运行结果:
1、读者写者写者:写数据读者:仅仅是读数据,不存在取走数据写者与写者关系:互斥读者与读者关系:没有关系写者与读者关系:同步、互斥解决方法:1)读者优先:读者正在读,写者不能终止读者,直到读者读完,写者才能写入2)写者优先:写者正在写,读者不能终止写者,直到写者写完,读者才能写入2、生产者消费者生产者:产生数据消费者:取走数据生产者与生产者:互斥关系消费者与消费者:互斥关系生产者与消费者:互斥、同步
1、什么是守护进程守护进程也称精灵进程(Daemon),是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。Linux系统启动时会启动很多系统服务进程,这些系统服务进程没有控制终端,不能直接和用户交互。其它进程都是在用户登录或运行程序时创建,在运行结束或用户注销时终止,但系统服务进程不受用户登录注销的影响,它们一直在运行着。这种进程有一个名称叫守护进程(D
1、什么是死锁指两个或两个以上的进程(线程)在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程(线程)称为死锁进程(线程)。 由于资源占用是互斥的,当某个进程提出申请资源后,使得有关进程(线程)在无外力协助下,永远分配不到必需的资源而无法继续运行,这就产生了一种特殊现象死锁。第一种情况:如果同一个
1、管道管道是一种最基本的IPC机制,由pipe函数创建:#include <unistd.h>int pipe(int filedes[2]);调用pipe函数时在内核中开辟一块缓冲区(称为管道)用于通信,它有一个读端一个写端,然后通过filedes参数传出给用户程序两个文件描述符,filedes[0]指向管道的读端,filedes[1]指向管道的写端。所以管道在用户程序看起来就像一
1、可重入函数1)举例说明:main函数调用insert函数向一个链表head中插入节点node1,插入操作分为两步,刚做完第一步的时候,因为硬件中断使进程切换到内核,再次回用户态之前检查到有信号待处理,于是切换到sighandler函数sighandler也调用insert函数向同一个链表head中插入节点node2,插入操作的两步都做完之后从sighandler返回内核态,再次回到用户态就从m
1、信号执行命令 kill -l 查看信号列表信号分为两类:普通信号(1-31)、实时信号(34-64)注意:大部分情况下信号不会立刻执行,大部分情况下信号是默认终止程序的,信号会在合适的时候执行。2、信号的产生产生方式有:按键、异常(内存越界、除零)、指令、调用系统函数1)按键:用户在终端按下某些键时,终端驱动程序会发送信号给前台进程,例如Ctrl-C产生SIGINT信号,Ctrl-\产生SIG
先给大家看一段程序:在Linux上运行此程序时会发生虚拟机重启,可是在main函数里并没有调用使虚拟机重启的函数fun,那他为什么会重启呢?这就用到了栈帧这个知识点。一、栈帧栈帧也叫过程活动记录,是编译器用来实现过程/函数调用的一种数据结构。首先必须要明确的一点是也是非常重要的一点,栈是向下生长的,所谓的向下生长是指从高地址->低地址的路径延伸,栈有栈顶和栈底,那么栈顶的地址要比栈底的地址低
一、调度与调度算法操作系统管理了系统的有限资源,当有多个进程(或多个进程发出的请求)要使用这些资源时,因为资源的有限性,必须按照一定的原则选择进程(请求)来占用资源。这就是调度。目的是控制资源使用者的数量,选取资源使用者许可占用资源或占用资源。在操作系统中调度是指一种资源分配,因而调度算法是指:根据系统的资源分配策略所规定的资源分配算法。对于不同的的系统和系统目标,通常采用不同的调度算法。调度算法
一、进程的定义进程是操作系统的概念,每当我们执行一个程序时,对于操作系统来讲就创建了一个进程,在这个过程中,伴随着资源的分配和释放。可以认为进程是一个程序的一次执行过程。 二、进程与程序的区别 程序时静态的,它是一些保存 在磁盘上得指令的有序集合,没有任何执行的概念。 进程是一个动态的概念,它是程
1、实现要求#的数量在不断地增加,后面的数字也随着增加,图标不停地在旋转2、用到的基础知识\n 换行(LF) ,将当前位置移到下一行开头\r 回车(CR) ,将当前位置移到本行开头,每次光标会回到行首\\ 代表一个反斜线字符'\'\0 空字符(NULL)3、程序的实现index里面是图标的实现,%-100s 是左端对齐,%d%% 是以7%这种形式输出,fflush(stdout) 是刷新
一、vim介绍Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性。VIM是纯粹的自由软件。vim常用的三种命令模式:1、命令模式(command mode)输入 vim test.c 会直接进入命令行模式,输入i,进入插入模式。2、插入模式(Insert mode)按ESC,进入命令行模式: w (保存当前文件): wq (保存并退出vim): q!
Linux下find命令在目录结构中搜索文件,并执行指定的操作。Linux下find命令提供了相当多的查找条件,功能很强大。由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。即使系统中含有网络文件系统( NFS),find命令在该文件系统中同样有效,只你具有相应的权限。 在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号