作为开源Container技术代表的Docker,它跟Linux内核的Namespace和Cgroup两大特性密不可分。物有本末,事有终始。知所先后,则近道矣。理解Linux的这两大特性将有助于我们更深入的理解Docker。 在本文中我们将会使用unshare命令来演示Linux内核的IPC Namespace是如何动作的。Namespace的历史Namespace并不是Linux才推出的东西,
转载
2024-06-20 16:43:26
71阅读
说到linux或者unix开发,没有用过这类系统以及没接触过底层系统开发的人都会错误地认为,系统开发就是开发系统,所以他们总是觉得,非要去看懂系统源码才能干系统开发。实际上这也是这几年我司招应届生遇到的一个尴尬问题,就是好多人不敢投系统开发岗的原因是因为他们觉得自己没读过linux源码,没那
原创
2022-03-10 13:38:38
229阅读
学习Linux内核需要什么基础
Linux内核作为操作系统的核心,是整个系统的灵魂所在。如果想要深入学习Linux内核,就需要具备一定的基础知识和技能。那么学习Linux内核需要什么基础呢?下面我们来详细探讨一下。
首先,学习Linux内核需要具备扎实的操作系统基础知识。因为Linux内核本身就是一个操作系统,所以对操作系统的基本原理、结构和功能有深入的理解是非常重要的。例如对进程管理、内存管
原创
2024-05-08 11:32:58
94阅读
一、操作系统需要满足的要素、二、宏内核、三、微内核、四、Linux 内核动态加载机制、
原创
2022-03-23 10:46:49
1763阅读
代码中自由颜如玉!代码中自有黄金屋!
一、内核行数Linux内核分为CPU调度、内存管理、网络和存储四大子系统,针对硬件的驱动成百上千。代码的数量更是大的惊人。先说说最早的内核linux 0.11,下面这本书可以说很多驱动工程师都学习过,我花了大概1个半月,勉强看了一遍。再来看看内核代码量的统计。2020年1月1日,Linux内核Git源码树中的代码达到了2780万行。phoronix网站统计了L
原创
2022-01-07 11:31:33
316阅读
Linux内核分为CPU调度、内存管理、网络和存储四大子系统,针对硬件的驱动成百上千。代码的数量更是大的惊人。
原创
2022-11-26 16:48:36
134阅读
Docker 介绍 准备工作版本要求Docker 有两个分支版本 , 一个是 Docker: CE 即社区免费版,另一个是 Docker EE 即企业版,需付费 , 其实使用CE版本就足够满足日常所需了. Docker 必须运行在含有Linux内核的系统上 , 另外官方建议要 CentOS7.0 及以上系统版本 .如果运行CentOS 6.5及以后版本时,需要内核版
转载
2023-07-14 13:35:48
996阅读
近两年容器技术突然变得很火热,几乎所有开发人员都在学习这个技术。技术人员并不见得一定比女性购物更加理智,有时候,选择一种新技术也仅仅是为了追赶时髦和潮流。从实现的角度来讲,容器技术不是全新的发明,Docker 容器只是针对 Linux 内核提供的基础功能(例如 namespace、cgroup)进行了扩展。本章不打算介绍所有与虚拟化相关的技术和实现方案,而是探讨和容器相关的虚拟化技术。主要探讨以下
转载
2023-08-25 11:34:27
155阅读
由于公司技术架构调整为Spring Cloud后,采用了Docker进行项目的部署管理。故而整理相关的Docker的信息,以便后期自我回顾1.Docker环境搭建 CentOS 仅发行版本中的内核支持 Docker。Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。 Docker 运行在 CentOS-6.5 或更高的版本的 Cent
转载
2023-07-11 21:24:28
419阅读
Linux内核的特点: 结合了unix操作系统的一些基础概念Linux内核的任务: 1.从技术层面讲,内核是硬件与软件之间的一个中间层。作用是将应用层序的请求传递给硬件,并充当底层驱动程序,对系统中的各种设备和组件进行寻址。 2.从应用程序的层面讲,应用程序与硬件没有联系,只与内核有联系,内核是应用程序知道的层次中的最底层。在实际工作中内核抽象了相关细节。 3.内核是一个资源管理程序。负责将可用的
iptables防火墙 - - - firewall作用:防止别人进入自己的电脑,攻击自己的电脑,不能杀病毒攻击的方式:dosddosccsyn flooding等软件防火墙linux系统的防火墙功能是由内核实现的防火墙:数据过滤机制数据包过滤机制是netfilter ,管理工具是iptablesnetfilter是linux防火墙的“内核态”iptables是 linux防火墙的“用户态”规则链
转载
2024-06-07 13:45:34
135阅读
一:内核编译前准备 (一)查看使用的操作系统版本 hostnamectl (二)下载Linux内核源码包(含疑惑) 原本打算使用低版本的Linux内核进行实验,但是编译完成了几个3.X版本以后发现总是出现CPU死机或者无法开机情况,所以这里还是先用与原系统内核的版本相近的进行编译(占了近20G空间)
转载
2020-09-10 19:10:00
828阅读
点赞
2评论
01Linux的基础一、Linux内核的特征1、linux内核组织形式为整体式结构2、进程调度方式简单有效3、支持内核线程(或称为守护进程)4、支持多种平台的虚拟内存管理5、虚拟文件系统6、模块机制(使内核之间相互独立,方便模块的移植)7、增加了系统调用1.Linux内核在系统中的位置2.Linux内核子系统之间的管理主要由五部分组成3.系统数据结构task_struct、mm_struct、in
转载
2024-03-25 17:37:30
106阅读
Docker是目前非常流行的容器化技术,通过Docker可以方便地创建、部署和运行应用程序。然而,在使用Docker时,可能会遇到一些与内核有关的问题。为了确保Docker正常运行,我们需要配置一些内核选项。
### Docker需要内核选项
首先,我们需要确保系统的内核版本符合Docker的要求。通常,Docker要求Linux内核版本至少为3.10。另外,还需要确保系统支持`aufs`、`
原创
2024-04-07 05:50:47
217阅读
线程分类:内核线程、用户线程(指不需要内核支持而完全建立在用户空间的线程库,这种线程效率高,由于Linux内核没有轻量级进程(线程)的概念,因此不能独立的对用户线程进行调度,而是由一个线程运行库来组织线程的调度)和轻量级线程(内核线程的高级抽象,大多数操作涉及到系统调用,效率不高)。 传统的Unix系统把一些重要的任务委托给周期性的执行进程,这些任务包括刷新磁盘高速缓存,交换出不用的页框,维护网络连接等。这些线程只运行在内核态(普通进程既可以运行在内核态,也可以运行在用户态),内核线程只运行在内核态,所以只使用大于PAGE_OFFSET的线性地址空间。现代操作系统把它们的函数委托...
转载
2013-07-05 22:18:00
1052阅读
2评论
linux需要哪些内核模块才能运行docker
在现代的开发和运维中,Docker已经成为了一个不可或缺的工具。它提供了一种轻量级的虚拟化方案,使应用可以在任何地方以一致的方式运行,但要让Docker正常工作,我们需要确保Linux系统具备适当的内核模块。本文将探讨这一主题,从背景开始,再深入到技术原理、架构解析、源码分析、性能优化以及应用场景。
### 背景描述
当我们在Linux系统上安
使用 Linux 系统调用的内核命令探究 SCI 并添加自己的调用级别: 中级M. Tim Jones (mtj@mtjones.com ), 顾问工程师, Emulex2007 年 4 月 17 日Linux® 系统调用 —— 我们每天都在使用它们。不过您清楚系统调用是如何在用户空间和内核之间执行的吗?本文将探究 Linux 系统调用接口(SCI),学习如
1:关于Linux内核的问题,首先我们要理解什么是Linux内核?所谓Linux内核:内核是指的提供硬件抽象层,磁盘和文件系统控制、多任务等功能的系统软件。一个内核并不是一个完整的操作系统。一个基于Linux内核的完整操作系统才叫做Linux操作系统,or GUN/Linux。<从上面的定义上来说,内核其实也就是一个系统软件,它能够提供硬件抽象、磁盘和文件控制等功能的软件。>2:关于L
转载
2024-05-10 11:24:39
100阅读
红帽公司是一家专注于开源技术的公司,其成立于1993年,总部位于美国北卡罗来纳州罗利。红帽公司以其广泛采用的操作系统 Red Hat Enterprise Linux(RHEL)而闻名,该操作系统基于开源的 Linux 内核。Linux 内核在移动设备领域也有着重要的地位,其中的 Android 内核就是基于 Linux 内核开发的。因此,我们不妨深入探讨一下 Android 内核和 Linux
原创
2024-03-19 09:14:43
209阅读
(X-Y)%mod=(X+Z)%mod。那么-Y与Z互为补码。对于正数,因为计算
原创
2023-07-11 16:16:13
164阅读