
Linux
文章平均质量分 79
asdfghjklcgu
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
grep、sed、awk
grep在文件中搜寻字符串匹配的行并输出grep [-c/o/i/n/r/v/l/E] [--color=auto] '搜寻字符串' filename-c 计算找到 ‘搜索字符串’ 的一共有多少行-o 指输出匹配的所有内容-i 匹配 ’搜索字符串‘ 的时候不区分大小写-n 显示匹配内容的行号-r 当指定要查找的是目录而非文件时,必须使用这项参数,否则 grep 命令将回报信息并停止...原创 2020-02-12 21:58:36 · 461 阅读 · 0 评论 -
/etc目录中的数据
1、主机名称配置文件 如何修改主机名称,进行永久修改时,需要修改配置文件,一般在命令行修改时不是永久性修改centos7 临时修改:hostname [主机名称] 永久修改:vi /etc/hostname (在文件里面直接修改),重启系统才能修改文件 既可以临时修...原创 2020-02-09 22:01:25 · 569 阅读 · 0 评论 -
网卡配置文件
网卡配置文件网卡配置文件所在目录配置文件的具体内容配置文件修改之后,不会立即生效,需要重启服务,重新加载配置文件,才能使文件生效方法一:systemctl restart network 针对所有网卡systemctl status network方法二:ifdown eth0 && ifup eth0 针对指定网卡(最常用)异常问题:网卡配置文件正...原创 2020-02-04 01:16:30 · 1784 阅读 · 0 评论 -
网络命令
网络命令write [用户名]给在线用户发信息,以Ctrl+D保存结束wall 给所有在线用户发信息ping [选项] IP地址 测试网络的连通性 选项:-cipconfig [网卡名称] [IP地址] 查看和设置网卡信息ipconfig eth0 192.168.0.1mail [用户名] 查看发送邮件last 列出目前与过去登入系统的...原创 2020-02-02 01:41:02 · 188 阅读 · 0 评论 -
文件搜索--find
findfind [搜索范围] [匹配条件] 文件搜索匹配条件:-name 根据文件名搜索find 搜索范围 -name 文件名称文件名称是精确查询,如果查找包含文件名称的文件则find 搜索范围 -name *文件名称*find 搜索范围 -name 文件名称*查找以文件名开头的文件find 搜索范围 -name 文件名称??一个问号代表一个字符-iname 根据文件名查...原创 2020-01-18 23:40:50 · 223 阅读 · 0 评论 -
地址映射
CS(段基址) << 4 + IP(逻辑地址/偏移地址)DS << 4 + IP = 数据的地址(物理地址)段基址 偏移量/偏移地址/逻辑地址(一个内存上的偏移量) 8086 在 CPU 增加了 4 个段寄存器 CS(代码段寄存器) DS(数据段寄存器) SS(堆栈段寄存器)(ES(扩展段寄存器)) IP寄存器存放偏移量...原创 2019-08-27 00:01:50 · 1192 阅读 · 0 评论 -
虚拟地址空间布局
虚拟地址空间布局栈和堆的区别:堆是由程序员开辟,必须要收回栈由操作系统自动分配释放,不用手动删除空间大小不同。堆可以申请的空间大于栈所申请的空间的大小。堆最多可以申请的空间大小为虚拟内存的大小栈在64位windows上最多可以申请1M空间,在64位Linux上最多可以申请10M空间内存开辟不同。堆是由低地址向高地址开辟内存,栈是由高地址向低地址开辟分配方式不同,堆是动态分配,栈...原创 2019-07-20 23:53:08 · 472 阅读 · 0 评论 -
select、poll、epoll三者区别
select select的参数类型fd_set没有将文件描述符和事件绑定,它仅仅是一个文件描述符集合,因此select需要提供3个这种类型的参数来分别传入和输出可读、可写及异常等事件。这一方面使得select不能处理更多类型的事件,另一方面由于内核对fd_set 集合的在线修改,应用程序下次调用select前不得不重置这3个fd_set集合。poll...原创 2019-04-24 00:30:58 · 257 阅读 · 0 评论 -
I/O复用--》poll
poll poll系统调用和select类似,也是在指定时间内轮询一定数量的文件描述符,以测试其中是否有就绪者。poll 的原型如下: #include <poll.h> int poll( struct pol1fd* fds, int nfds, int timeout ); ...原创 2019-04-18 00:56:19 · 245 阅读 · 0 评论 -
I/O复用--》epoll
epoll epoll是Linux特有的I/O复用函数。它在实现和使用上与select、poll有很大差异。首先,epoll 使用一组函数来完成任务,而不是单个函数。其次,epoll 把用户关心的文件描述符上的事件放在内核里的一个事件表中,从而无须像select和poll那样每次调用都要重复传入文件描述符集或事件集。但epoll需要使用一一个额...原创 2019-04-18 16:22:39 · 167 阅读 · 0 评论 -
I/O复用--》select
I/O复用技术 将n个文件描述符统一监视,当其中某些文件描述符上有事件发生,则程序只处理有事件发生的文件描述符。 I/O复用使得程序能同时监听多个文件描述符,这对提高程序的性能至关重要。通常,网络程序在下列情况下需要使用I/O复用技术: 1、客...原创 2019-04-18 00:22:32 · 191 阅读 · 0 评论 -
线程池
Sever#include <stdio.h>#include <stdlib.h>#include <assert.h>#include <string.h>#include <unistd.h>#include <sys/socket.h>#include <sys/types.h>#inclu...原创 2019-04-16 17:07:24 · 136 阅读 · 0 评论 -
多线程
Sever#include <stdio.h>#include <stdlib.h>#include <assert.h>#include <string.h>#include <unistd.h>#include <sys/socket.h>#include <sys/types.h>#inclu...原创 2019-04-15 18:34:46 · 134 阅读 · 0 评论 -
多进程
多进程: c不需要传递,因为fork之后,子进程可以直接通过c访问此链接,父进程创建子进程后,必须调用close( c );防止资源浪费,子进程结束后,也调用close( c ):缺陷: 创建一个进程,为一个客户端交互完成后,也会随之结束,会造成服务器系统担。 如果客户端多很多,则服务器端创建的子进程也会很多。并日大部分子进程会阻塞在rec...原创 2019-04-16 18:45:36 · 181 阅读 · 0 评论 -
ip
IP特点:无连接的 不可靠的 无状态的不可靠的:尽力转发 没有超时重传,确认机制,只校验头部信息,不校验数据。无连接的:上层连接无状态:数据到达接收方可能是乱序,重复的路由器:选路 存储 转发4位版本号:指定IP协议的版本,IPv4,值为44位头部长度:表示该IP头部有多少个4字节,四位能表示的最大是15,所以IP头部最大是60字节。8位服务类型:包括3位优先权字段,4位TOS...原创 2019-04-11 17:48:27 · 214 阅读 · 0 评论 -
DNS
DNS:域名解析协议www.baide.com通过DNS协议解析对应的IP地址 + 80(端口号)— 》web服务器浏览器 本地的IP地址 端口号服务器 服务器的IP地址 端口号浏览器发送的HTTP请求报文段给web服务器,web服务器收到HTTP请求报文段,解析报文段,根据解析结果将应答报文段和请求页面发送给浏览器 ,浏览器收到数据并呈现 HTML解析 jsonservice ...原创 2019-04-12 15:18:21 · 225 阅读 · 0 评论 -
TCP和UDP的区别
TCP协议和DP协议的对比:TCP: 面向连接的 可靠的 字节流服务UDP: 无连接 不可靠 数据报服务TCP 字节流服务 数据没有发送与接收界限...原创 2019-04-08 17:11:15 · 206 阅读 · 0 评论 -
UDP
UDP的特点: 无连接 不可靠的 数据报服务 无连接:两个主机可以直接发送数据,不需要建立连接 不可靠:UDP不保证数据能够到达对端,不保证数据的完整性,正确性,乱序 重复 数据报服务:数据是一段一段的。发送方sendto的次数和接收方接收数据...原创 2019-04-07 00:37:39 · 338 阅读 · 0 评论 -
TCP
传输层协议TCP面向连接 可靠的 字节流服务 面向连接: 网络中的两个主机交互数据之前,必须先建立连接 可靠的: 数据够安全的、完的传输到对方。数据不丢失 数据不出错 数据不乱序 数据不重复 字节流服务: 抽刀断水水更流 数据是没有界限的TCP协议的编程流程:C/...原创 2019-04-05 23:34:43 · 170 阅读 · 0 评论 -
线程
线程的概念: 线程是进程内部的一条执行序列(执行流),一个进程可以包含多条线程(main函数所代表的执行序列,主线程)。通过函数库创建线程—函数线程。一个进程中所有线程是并发执行的。进程与线程的区别: 1、线程是执行的最小单位,CPU调度的最小单位,进程是资源分配的最小单位  ...原创 2019-03-26 17:04:19 · 215 阅读 · 0 评论 -
替换进程exec
1、exec函数族让父子进程执行不相干的操作&nbsp;&nbsp;&nbsp;&nbsp; 能够替换进程地址空间的源代码.txt段&nbsp;&nbsp;&nbsp;&nbsp; 当前程序中调用另外一个应用程序&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs原创 2019-03-11 14:34:13 · 332 阅读 · 0 评论 -
进程间通讯
管道有名管道:在磁盘上有一个文件标识,创建管道文件,但是,交互的数据并不会存储到磁盘中,管道文件不占磁盘空间。 创建管道文件: 命令:mkfifo filename  ...原创 2019-03-23 01:02:36 · 298 阅读 · 0 评论 -
信号
信号 系统预先定义好的某些特定的事,事件可以被产生,也可以被接收,产生和接收事件的主体都是进程。 /usr/include/bits/signum.h1、收到信号后,进程的行为如何设置。信号的响应方式: 忽略 SI...原创 2019-08-12 19:57:59 · 156 阅读 · 0 评论 -
僵死进程
1、产生原因&nbsp;&nbsp;&nbsp;&nbsp; 进程主体结束,但是其PCB没有释放&nbsp;&nbsp;&nbsp;&nbsp; PCB中记录进程的运行信息,进程结束时,PCB中有一个exit_code,保存进程的退出信息,进程退出信息如果没有被(父进程)处理,则PCB无法释放&nbsp;&nbsp;&nbsp原创 2019-03-11 21:07:14 · 319 阅读 · 0 评论 -
进程管理
操作系统对进程的管理方案 操作系统为每一个进程分配一个数据结构,在该结构里面描述进程的资源和状态,为进程分配资源,使进程的资源不会被其他进程占用,实现进程同步。并发执行单处理器多道程序多处理器并行执行冯诺依曼体系:控制器、计算器、输出设备、输入设备存储设备:磁盘、硬盘 内存 高速缓存 寄存器...原创 2019-07-27 00:53:48 · 234 阅读 · 0 评论 -
孤儿进程
产生原因 父进程结束,子进程依旧执行,子进程就是孤儿进程,而操作系统会将孤儿进程通过init(PID==1)来管理。 因为内核中PCB结构只会记录进程的ppid,无法记录进程的所有子进程的pid,所以父进程只有在fork时才能获取子进程的pid mall...原创 2019-03-11 20:52:51 · 290 阅读 · 0 评论 -
fork函数
fork :进程创建fork函数的特点:&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; fork函数调用一次,返回两次。在父进程中返回子进程的pid(非0值),在子进程中返回0.&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; 子进程从fork原创 2019-03-09 12:14:05 · 3132 阅读 · 0 评论 -
计算机网络
1、网络:将计算机串联起来互联网:将各个网络串联起来 Inter例子:局域网2、网络通信:两台电脑相互发送数据网络通讯主角:运行在不同机器上的两个进程IP地址:标识网络中的机器端口号:标识机器上运行的进程的3、设备:交换机,路由器:存储 选路 转发4、网线:双绞线 能传播100米 有8根线,真正通讯有4根AA线,电脑与设备之间连接 AB线,电脑和电脑之间连接同轴电...原创 2019-03-26 17:14:30 · 126 阅读 · 0 评论 -
文件调用函数
C语言的库函数fopen fread fwrite fclose fseek fgets fputs fgetc fputcLinux的系统调用函数open read write close lseek打开文件FILE *fopen(const char *filename,const char *flag);int open(const char *filen...原创 2019-03-04 20:35:34 · 633 阅读 · 0 评论 -
动态库与静态库
gcc & g++的区别 gcc默认链接C库 —》 libc gcc编译C++(.CPP)文件 gcc -o main main.cpp -lstdc++ g++默认链接C++库 —》 libstdc++ g++编译C语言(.c)没有任何问题库文件libstdc++ ...原创 2019-02-22 23:09:54 · 269 阅读 · 0 评论 -
gdb调试
调试:## gdb gcc可执行版本 —》debug版本 可调试版本 添加调试信息 Linux gcc: gcc -o debug_main main.c list.c -g 分原创 2019-01-23 22:35:18 · 163 阅读 · 0 评论 -
编译链接原理
gcc的具体使用方式预编译 &nbsp;&nbsp;&nbsp;&nbsp;gcc -E main.c -o main.i&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&a原创 2019-01-23 21:00:19 · 165 阅读 · 0 评论 -
Linux常用命令
关于目录的命令cd 路径 切换工作位置/当前位置/当前目录cd … 退回上一级目录pwd 显示当前目录的绝对路径ls 显示当前目录下的文件ls -l 显示当前目录下的文件的详细信息文件的基本命令 普通文件目录文件 创建 touch filename mkdir dirname 删...原创 2019-01-23 19:11:33 · 258 阅读 · 0 评论 -
目录存储层次 文件类型权限
Linux系统 开源 免费 内核轻巧 运行快捷 —》》服务器Linux系统的目录层次结构: 目录–》windows文件夹 --》文件存储管理器Linux:没有盘符 根目录 所有文件存储的初始位置windows有盘符,linux没有,windows用反斜杠,linux用斜杠Linux是多用户的操作系统 运行多个用户同时登陆工作—》远程登陆远程登陆:多个用...原创 2019-07-29 23:23:27 · 173 阅读 · 0 评论