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