
Linux入门
文章平均质量分 62
Linux从入门到如土
Tihu灌顶
菜鸡一只
展开
-
Linux - ICMP协议
注意需要创建ICMP报文,但是只有root用户才可以创建ICMP报文,因此在执行的时候需要使用root权限。,输入root密码即可。否则在创建socket的时候会产生。循环发送 MAX_NO_PACKETS次包。原创 2022-10-08 22:01:18 · 990 阅读 · 1 评论 -
Linux - 线程同步
整体很合理,但是过程很不合理,f1或者f2长时间执行后才会轮到另外的一个线程。都是上锁后排斥其他锁,本身有锁的前提下可以通过trylock来提前返回。它跟互斥锁有同样的问题,但是他影响不打,没有关系。cond也有临界数据脏的问题,因此要上锁。首先看锁的数量,其次看阻塞是否比较多。10个线程 加锁线程比较少,使用自旋锁。两个线程 枷锁线程比较长,使用互斥锁。但是本质上面还是要等 还是阻塞的。原创 2022-10-05 20:10:15 · 244 阅读 · 0 评论 -
Linux - 多线程
1. 进程是os资源分配的基本单位 : 资源2. 线程是os调度的基本单位 : 代码3. windows跟linux多线程类似,但是函数名不同,方式不同。区别:一个进程里面可以有多个线程,同一个进程中的多个线程共享进程资源本质上进程和线程的没有区别2.2版本的linux内核中,没有线程,只有进程,并且进程数量有限,共4096个2.4版本开始,内核中有了线程的概念,线程个数无线线程和进程都是进程的结构体。原创 2022-09-28 11:09:40 · 159 阅读 · 0 评论 -
Linux - io多路复用(poll和epoll)
epoll是优化后的poll,通过注册事件来避开轮询,有变化会发消息。select 阻塞 poll 把动静赋值到结构体的链表中,然后返回。select和poll没有本质的区别,他们都是轮询fd是否有动静。+ 效率受描述符号个数的影响(监视的描述符号越多,效率越低)+ poll是没有动静都写结构体成员revents然后返回。+ select是没有动静就阻塞,有动静就返回。如果等到了,返回有动静的描述符号数量。3. 等待消息的到来,挨个处理事件。2. 注册描述符号的事件。epoll的简单使用。原创 2022-09-24 20:48:29 · 230 阅读 · 0 评论 -
Linux - io多路复用(select)
有动静后fd_set里面会清空没有动静的文件描述符号,只留下有动静的文件描述符号原创 2022-09-22 16:56:05 · 390 阅读 · 0 评论 -
Linux - 网络编程(二) - UDP
【代码】Linux - UDP。原创 2022-09-19 17:42:44 · 279 阅读 · 0 评论 -
Linux - 网络编程(一) - TCP
并非必须得是一台计算机,共享单车、共享充电宝、路由器、空调、智能开关等都是主机,只要具备网络功能的计算机都是主机。具有网络模块的芯片也算是一个主机。多个主机连到一起,就形成了网络。原创 2022-09-18 16:03:23 · 557 阅读 · 0 评论 -
Linux - IPC(Inter Process Communication)
定义:希望多个进程错开时间,去访问同一块区域。有一个整数,有一些进程可以去操作这个整数,加(随便加),减(不能减到零以下)需要一个具备唯一性的key,一般通过文件描述符号来创建这个key(文件描述符号 fd 具备唯一性)定义:内核会维护主机上的一块内存段,多个进程可以访问这块内存段。定义:在主机上指定一个或者多个队列,多个进程可以访问这些队列。查看信息 chmctl。原创 2022-09-15 16:56:54 · 111 阅读 · 0 评论 -
Linux - 常用信号
常用信号原创 2022-09-13 18:18:52 · 507 阅读 · 0 评论 -
Linux - 信号
setitimer()将value指向的结构体设为计时器的当前值,如果ovalue不是NULL,将返回计时器原有值。ITIMER_PROF //数值为2,进程和系统执行时都递减计时器的值,发送的信号是SIGPROF。ITIMER_VIRTUAL //数值为1,进程执行时递减计时器的值,发送的信号是SIGVTALRM。ITIMER_REAL //数值为0,计时器的值实时递减,发送的信号是SIGALRM。不仅仅可以接受信号做信号处理,还能接收信号的同时接受一些信息。硬件中断:物理层面的中断。原创 2022-09-13 18:10:11 · 242 阅读 · 0 评论 -
Linux - 管道
管道:管道是一个文件 (FIFO First In First Out)以文件形式存在的一个特殊队列。当后面的程序没有改n的值的时候,操作系统中只有一份n,只有当要修改n的值的时候,才进行拷贝.管道一边打开后阻塞 等待另外一边打开 结束open函数。只有当需要写的时候才拷贝,只进行读操作,不进行拷贝。//1 创建两个文件描述符号 (两个int整形)可以在同一主机上不同进程之间操作 有具体的文件。专门用于父子之间,直接使用文件描述符号,//2 把文件描述符号变成管道。//3 使用管道进行通信。原创 2022-09-08 22:39:37 · 889 阅读 · 0 评论 -
Linux - 进程
Linux进程的相关内容原创 2022-09-07 16:11:45 · 724 阅读 · 0 评论 -
Linux - 目录
假设文件内有 qwertyuiopasdfghjkl,隔两个读一个 q r u p d h l。我们完全可以重新读取之前存入文件中的内容,由此可见,文件虚拟内存就是以操作内存的方式操作文件。使用read以及write的时候默认会使用到文件内容指针。验证文件虚拟内存就是以操作内存的方式操作文件。把硬盘中的文件和内存中的一块内存临时绑定!所有目录下 都有如下两个目录。原创 2022-09-03 23:15:32 · 111 阅读 · 0 评论 -
Linux-文件
标准io : 0 stdin 1 stdout 2 stderror(都是终端)命令 : read write 操作系统提前安装好的 应用程序。万物皆文件::linux系统之上 任何东西都是以文件的形式存在。掉电不流失(硬盘)–内存掉电流失你。函数 : read write。操作系统上管理数据的一种方式。2 : 标注错误输出描述符号。0 : 标准输入设备。1 : 标准输出设备。原创 2022-09-01 21:13:59 · 223 阅读 · 0 评论 -
Linux上的编译工具&&makefile
GUN: GUN's Not Unix原创 2022-08-30 21:44:25 · 553 阅读 · 0 评论 -
基础命令&&shell
入门级原创 2022-08-28 15:01:08 · 239 阅读 · 0 评论 -
Linux基础命令
Linux基础命令原创 2022-08-26 18:56:54 · 240 阅读 · 0 评论