-
Operating.System.Concepts.10th.Edition中文翻译
所属栏目:[Linux] 日期:2020-12-13 热度:192
《操作系统概念》是一本很好的书,主要介绍了操作系统的各个层面的概念,包含CPU调度,内存处理,文件系统等,目前已经出到第10版,是一本非常经典的书籍,从第1版至今被国内外众多高校选作教材,非常具有权威性。 作者简介 · · · · · · 亚伯拉罕·西[详细]
-
linux和docker的capabilities介绍
所属栏目:[Linux] 日期:2020-12-13 热度:177
验证环境:centos7 x86/64 内核版本4.19.9 在linux 2.2版本之前,当内核对进程进行权限验证的时候,可以将进程划分为两类:privileged(UID=0)和unprivilege(UID!=0)。其中privileged的进程拥有所有内核权限,而unprivileged则根据如可执行文件的权限(effecti[详细]
-
流量控制--5.Classless Queuing Disciplines (qdiscs)
所属栏目:[Linux] 日期:2020-12-13 热度:137
Classless Queuing Disciplines (qdiscs) 本文涉及的队列规则(Qdisc)都可以作为接口上的主qdisc,或作为一个classful qdiscs的叶子类。这些是Linux下使用的基本调度器。默认的调度器为 pfifo_fast 。 6.1 FIFO,先进先出(pfifo和bfifo) 注:虽然FIFO是队列系[详细]
-
流量控制--2.传统的流量控制元素
所属栏目:[Linux] 日期:2020-12-13 热度:127
传统的流量控制元素 目录 传统的流量控制元素 3.1 整流 3.2 调度 3.3 分类 3.4 策略 3.5 丢弃 3.6 标记 3.1 整流 整流器通过延迟报文来满足所需的传输速率。整流是一种通过延迟传输到输出队列的报文来满足期望的输出速率的机制。这是寻求带宽控制解决方案的[详细]
-
软中断和实时性
所属栏目:[Linux] 日期:2020-12-13 热度:100
软中断和实时性 翻译自:Software interrupts and realtime Linux内核的软中断("softirq")机制有些奇怪,在早期的Linux和处理机制下比较晦涩,且仅有极少的内核开发人员会直接接触软中断。然而它是内核的大多数重要处理的核心。在某些场景下,软中断会以一种[详细]
-
源码编译安装使用glusterfs+heketi安装使用
所属栏目:[Linux] 日期:2020-12-13 热度:182
注:使用源码安装的原因主要是使用yum安装glusterfs服务端时出现一些依赖库问题 准备3台glusterfs服务器(官方也建议至少3台,防止发生脑裂),并在各个服务器的/etc/hosts下面添加如下内容(如使用DNS服务器,则在DNS中添加域名解析) 10.85 . 3.113 glusterfs-[详细]
-
Linux GCC常用命令
所属栏目:[Linux] 日期:2020-12-13 热度:65
1简介 GCC 的意思也只是 GNU C Compiler 而已。经过了这么多年的发展,GCC 已经不仅仅能支持 C 语言;它现在还支持 Ada 语言、C++ 语言、Java 语言、Objective C 语言、Pascal 语言、COBOL语言,以及支持函数式编程和逻辑编程的 Mercury 语言,等等。而 GCC[详细]
-
Linux netstat命令详解
所属栏目:[Linux] 日期:2020-12-13 热度:159
简介 Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。 输出信息含义 执行netstat后,其输出结果为 Active Internet connections (w/o servers) Pro[详细]
-
进程通信---FIFO
所属栏目:[Linux] 日期:2020-12-13 热度:92
管道没有名字,所以只能在具有血缘关系的进程间使用,而在无名管道发展出来的有名管道FIFO,则有路径名与之相关联,以一种特殊设备文件形式存在于文件系统中,从而允许无亲缘关系的进程访问FIFO,下面看FIFO的详细操作 1.FIFO的建立 FIFO是存在于文件系统的[详细]
-
mq_open失败,Invalid argument
所属栏目:[Linux] 日期:2020-12-13 热度:155
经四处查找,终于发现原因: (1)attr.mq_maxmsg 不能超过文件 /proc/sys/fs/mqueue/msg_max 中的数值,我的机器上面是10。 (2)attr.mq_msgsize不能超过 /proc/sys/fs/mqueue/msgsize_max 的数值。 (3)消息队列名称前面必须加上斜杆。 详细请参考:命令[详细]
-
【转】Linux杀死fork产生的子进程的僵尸进程defunct
所属栏目:[Linux] 日期:2020-12-13 热度:187
僵尸进程 就是 已经结束,但是还没有清理出去的.用kill -9 $PID 也无法杀死. 所以程序中应该避免出现僵尸进程. 用fork之后,父进程如果没有wait /waitpid 等待子进程的话,子进程完毕后,就成了僵尸进程. 但是父进程如果等待wait/waitpid的话,就没法干别的事情了[详细]
-
Posix消息队列
所属栏目:[Linux] 日期:2020-12-13 热度:161
一、 函数 mq_open 头文件 mqueue.h ; ? 原型 mqd_t mq_open(const char *name,int oflag,.../*mode_t mode,struct mq_attr* attr*/); ? 函数功能 创建消息队列; ? 参数 name? :消息队列的名字,根据消息队列的规则,为了更好的可移植性,该名字必须以‘[详细]
-
采用dlopen、dlsym、dlclose加载动态链接库
所属栏目:[Linux] 日期:2020-12-13 热度:132
1、前言 为了使程序方便扩展,具备通用性,可以采用插件形式。采用异步事件驱动模型,保证主程序逻辑不变,将各个业务已动态链接库的形式加载进来,这就是所谓的插件。linux提供了加载和处理动态链接库的系统调用,非常方便。本文先从使用上进行总结,涉及到[详细]
-
linux exec函数族
所属栏目:[Linux] 日期:2020-12-13 热度:90
1、简介 在Linux中,并不存在exec()函数,exec指的是一组函数,一共有6个,分别是: #include unistd.h ? extern char **environ; ? int execl(const char *path,const char *arg,...); int execlp(const char *file,...); int execle(const char *path,...,[详细]
-
undefined reference to 'mq_open'
所属栏目:[Linux] 日期:2020-12-13 热度:176
验证 UNPv2里的一个例子时,连接时出现 undefined reference to 'mq_open' 错误。 man mq_open ,发现里面有这么一句话 :link with -lrt 。加上 -lrt 后,连接成功。 运行,出现 Permission deny。继续查,man mq_overview 发现: Each message queue is id[详细]
-
Linux tcpdump命令详解
所属栏目:[Linux] 日期:2020-12-13 热度:53
简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。?tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供an[详细]
-
Linux多线程编程(不限Linux)
所属栏目:[Linux] 日期:2020-12-13 热度:79
前言 线程?为什么有了进程还需要线程呢,他们有什么区别?使用线程有什么优势呢?还有多线程编程的一些细节问题,如线程之间怎样同步、互斥,这些东西将在本文中介绍。我在某QQ群里见到这样一道面试题: 是否熟悉POSIX多线程编程技术?如熟悉,编写程序完成[详细]
-
linux修改进程名
所属栏目:[Linux] 日期:2020-12-13 热度:163
一、linux中的进程名 ? ? linux中有很多查看/操作进程的命令。 ????这些命令的参数或显示的结果,有的是真实的进程名(top/pstree/pgrep/kill/killall),有的是进程的命令行参数(ps)。 ? ? 例如:有一个进程a.out,运行方式为:./a.out arg1 arg2 ????????? ?[详细]
-
Linux环境编程进程间通信机制理解
所属栏目:[Linux] 日期:2020-12-13 热度:50
一、Linux系统调用主要函数 二、创建进程 1、创建子进程系统调用fork() 2、验证fork()创建子进程效果 3、系统调用fork()与挂起系统调用wait() 三、模拟进程管道通信 四、pipe()下生产者与消费者问题 总结 一、Linux系统调用主要函数 首先,认识一下Linux下系[详细]
-
Linux基本命令及编程环境实验
所属栏目:[Linux] 日期:2020-12-13 热度:62
? 目录 一、Linux基本命令详细汇总 ? ? ? ?1、目录及文件相关命令 ? ? ? ?2、系统信息查询 ? ? ? ?3、文件操作(统计、过滤、搜索、权限) ? ? ? ?4、其他命令 二、Linux终端上vi命令编程 ? ? ? ?1、进入vi命令模式 ? ? ? ?2、vi编辑模式 ? ? ? ?3、最后行模[详细]
-
linux之用户管理
所属栏目:[Linux] 日期:2020-12-13 热度:57
每个用户至少属于一个组。 每个用户创建成功后都会生成一个家目录。 1、添加用户:useradd [可选项] 用户名 useradd -d /home/dema dema,就会将dema用户放在/home/dema目录中。 useradd -g 组名 用户名:将用户添加到指定组 2、指定和修改密码:passwd 用户[详细]
-
linux之文件目录类相关的指令
所属栏目:[Linux] 日期:2020-12-13 热度:113
pwd:显示当前路径的绝对路径 ls:显示文件或目录,带上-a表示加上显示隐藏目录或文件,加上-l表示以列表显示。 cd:切换到不同的目录。 cd /:切换到根目录 cd ~:切换到当前用户的Home目录 cd ..:返回上一级目录 cd /etc/:切换到根目录下的etc目录? mkdi[详细]
-
linux之磁盘分区
所属栏目:[Linux] 日期:2020-12-13 热度:138
? ? ? ? ? 可以使用:lsblk -f查看系统的分区和挂载的情况 ?[详细]
-
linux之解决使用VMWare安装centos7后无法联网问题
所属栏目:[Linux] 日期:2020-12-13 热度:128
安装完centos7之后,发现打开firefox无法访问百度,在终端输入ping www.baidu.com显示 Name or service not known ,可以用以下方法解决。 首先我们使用的网络连接模式是NAT模式。 由于我安装的是带有界面的centos7,因此一开始是打算直接通过可视化的界面修[详细]
-
linux之centos设置共享文件夹之后不显示
所属栏目:[Linux] 日期:2020-12-13 热度:67
sudo vmhgfs-fuse .host:/共享文件夹名字 /mnt/hgfs -o nonempty -o allow_other[详细]