2020-07-20 07:03
⁄ 工业·编程
⁄ 共 6482字
1、什么是NetLink?
它是一种特殊的 socket,它是Linux所特有的,由于传送的消息是暂存在socket接收缓存中,并不被接收者立即处理,所以netlink是一种异步通信机制。 系统调用和 ioctl 则是同步通信机制。Netlink是面向数据包的服务,为内核与用户层搭建了一个高速通道。
用户空间进程可以通过标准socket API来实现消息的发送、接收。进程间通信的方式有:管道(Pipe)及命名管道(Named Pipe),信号(Signal),消息队列(Message q...
linux, netlink阅读全文
2020-06-29 08:02
⁄ 工业·编程
⁄ 共 547字
linux 没用 c++ 是有多方面原因的----
1. linux发展那会c++,还不成熟; linux 1991年开始,而那会 c++还没有完全成型,c++的第一个标准1998年才出来,你让大家用一个未经考验,标准都没有的语言去开发,不现实。
2. 更重要的,就是 linus 本人对语言的偏好。linus 在邮件列表中不止一次对 c++ 严厉指责。最近的一次是近期 rust for linux module 进入 next 分支,而部分开发者在邮件中表示,还不如用 c++ 来写。linus 再次对 c++...
c++, linux阅读全文
2020-06-02 19:46
⁄ 工业·编程
⁄ 共 6969字
二进制文件是我们几乎每天都需要打交道的文件类型,但很少人知道他们的工作原理。这里所讲的二进制文件,是指一些可执行文件,包括你天天要使用的 Linux 命令,也是二进制文件的一种。
Linux 系统给我们提供了非常多用于分析二进制文件的工具,不管你在 Linux 下从事的是何种工作,知道这些工具也会让你对你的系统更加了解。
在本文中,将介绍几种最常用的用于分析二进制文件的工具及命令,这些工具在大部分发行版里可以直接使...
linux阅读全文
2020-06-01 19:42
⁄ 工业·编程
⁄ 共 2632字
在我们编写代码的时候,我们经常需要知道两个文件之间,或者同一个文件不同版本之间有什么差异性。在 Windows 下有个很强大的工具叫作 BeyondCompare ,那在 Linux 下需要用到什么工具呢?
本文介绍 9 种 Linux 下常用的 9 种代码比对工具,不仅有命令行工具,还有 GUI 界面工具,让你轻松进行代码比对。
1. diff命令
diff 命令是 Linux 下自带的一个强大的文本比对工具,而且使用起来非常方便。对于它的使用,我之前也单独写过...
linux, 软件工具阅读全文
2020-05-31 19:39
⁄ 工业·编程
⁄ 共 1649字
Linux 下,如果要执行一条或多条之前输过的指令,要怎么处理?很多人会想到使用上下箭头去翻查历史输入的命令。这当然是可以了,除了这种方法,本文再介绍另外 5 种方法来实现这样的效果。
在正式开始之前,我们先随便执行几条命令,便于后面演示。为了节约篇幅,执行结果暂时不列出来。
$ ls -l
$ pwd
$ date
$ uname -a
方法1:!!
没错,两个叹号也是一条命令,它会重复执行最后执行的那条命令。
$ !!
这条命令等同于如下效果...
linux, 脚本阅读全文
2020-05-30 19:38
⁄ 工业·编程
⁄ 共 1513字
在工作中,我们经常有个需求,那就是在系统启动之后,自动启动某个脚本或服务。在 Windows 下,我们有很多方法可以设置开机启动,但在 Linux 系统下我们需要如何操作呢?
Linux 下同样可以设置开机启动,但可能需要我们敲一些命令(可能也有 UI 界面的设置方法,但我不熟,我更多是玩命令)。下面我们就介绍三种简单但可行的开机启动设置方法。
方法一:修改 /etc/rc.d/rc.local 文件
/etc/rc.d/rc.local 文件会在 Linux 系统各...
linux, 脚本阅读全文
2020-05-28 15:53
⁄ 工业·编程
⁄ 共 210字
1、deb 是 ubuntu 、debian 的格式。
rpm 是 redhat 、fedora 、suse 的格式。他们不通用(虽然可以转换一下)。
deb是debian发行版的软件包,ubuntu是基于debian 发行的,所有可以用。
.deb是solaris系统下的安装包后缀名。安装方法如下
cd 到安装包的目录
dpkg -i 安装包名字
2、如果你使用的是red hat linux,然后运行以下命令安装
cd 到安装包的目录
rpm -ivh 安装包名字
linux, ubuntu阅读全文
2020-02-23 10:47
⁄ 工业·编程
⁄ 共 2736字
Namespace概述
Namespace 用于不同进程组之间的资源隔离,其目的是将某个特定的全局系统资源(global system resource)通过抽象方法使得namespace 中的进程看起来拥有它们自己的隔离的全局系统资源实例。
Linux 内核中实现了六种 namespace,按照引入的先后顺序,列表如下:
namespace
引入内核版本
被隔离的全局系统资源
在容器语境下的隔离效果
Mount namespaces
Linux 2.4.19
文档系统挂接点...
cgroup, linux阅读全文
2020-02-21 09:37
⁄ 工业·编程
⁄ 共 3736字
cgroup2007年从2.6.24引入linux内核主线,目前默认已启用该特性。在cgroup出现之前,只能对一个进程做资源限制,比如通过sched_setaffinity设置进程cpu亲和性,使用ulimit限制进程打开文件上限、栈大小等。
cgroups是Linux下控制一个(或一组)进程的资源限制机制,全称是control groups,可以对cpu、内存等资源做精细化控制,比如目前很多的Docker在Linux下就是基于cgroups提供的资源限制机制来实现资源控制的;除此之外,开发...
cgroup, linux阅读全文
2020-02-20 08:41
⁄ 工业·编程
⁄ 共 782字
cgroup是control group的简称,称为控制组,主要是为系统用户提供不同类型的资源分配和限制功能,是实现docker的基础。
cgroup主要的功能可以归纳如下:
1、资源限制:资源限制主要体现在进程运行过程中所需要的资源,例如cpu使用配额、内存大小、磁盘访问等
2、设置程序的优先级: 程序的执行优先级可以通过对cpu的使用以及I/O带宽的限制
3、系统资源使用统计:统计cpu运行时间,统计内存使用,统计程序wakeup次数等。
4、进程...
cgroup, linux阅读全文