随笔分类 -  linux设备驱动

Docker基础技术:Linux Namespace(下)
摘要:在 Docker基础技术:Linux Namespace(上篇)中我们了解了,UTD、IPC、PID、Mount 四个namespace,我们模仿Docker做了一个相当相当山寨的镜像。在这一篇中,主要想向大家介绍Linux的User和Network的Namespace。 好,下面我们就介绍一下还剩 阅读全文

posted @ 2018-03-04 09:49 AlanTu 阅读(204) 评论(0) 推荐(0) 编辑

Docker基础技术:Linux Namespace(上)
摘要:时下最热的技术莫过于Docker了,很多人都觉得Docker是个新技术,其实不然,Docker除了其编程语言用go比较新外,其实它还真不是个新东西,也就是个新瓶装旧酒的东西,所谓的The New “Old Stuff”。Docker和Docker衍生的东西用到了很多很酷的技术,我会用几篇 文章来把这 阅读全文

posted @ 2018-03-04 09:48 AlanTu 阅读(254) 评论(0) 推荐(0) 编辑

Docker基础技术:Linux CGroup
摘要:前面,我们介绍了Linux Namespace,但是Namespace解决的问题主要是环境隔离的问题,这只是虚拟化中最最基础的一步,我们还需要解决对计算机资源使用上的隔离。也就是说,虽然你通过Namespace把我Jail到一个特定的环境中去了,但是我在其中的进程使用用CPU、内存、磁盘等这些计算资 阅读全文

posted @ 2018-03-04 09:11 AlanTu 阅读(305) 评论(0) 推荐(1) 编辑

Docker基础技术:DeviceMapper
摘要:在上一篇介绍AUFS的文章中,大家可以看到,Docker的分层镜像是怎么通过UnionFS这种文件系统做到的,但是,因为Docker首选的AUFS并不在Linux的内核主干里,所以,对于非Ubuntu的Linux分发包,比如CentOS,就无法使用AUFS作为Docker的文件系统了。于是作为第二优 阅读全文

posted @ 2018-03-04 08:54 AlanTu 阅读(412) 评论(0) 推荐(0) 编辑

Docker基础技术:AUFS
摘要:AUFS是一种Union File System,所谓UnionFS就是把不同物理位置的目录合并mount到同一个目录中。UnionFS的一个最主要的应用是,把一张CD/DVD和一个硬盘目录给联合 mount在一起,然后,你就可以对这个只读的CD/DVD上的文件进行修改(当然,修改的文件存于硬盘上的 阅读全文

posted @ 2018-03-04 08:54 AlanTu 阅读(574) 评论(0) 推荐(0) 编辑

Linux设备驱动Hello World程序介绍
摘要:自古以来,学习一门新编程语言的第一步就是写一个打印“hello world”的程序(可以看《hello world 集中营》这个帖子供罗列了300个“hello world”程序例子)在本文中,我们将用同样的方式学习如何编写一个简单的linux内核模块和设备驱动程序。我将学习到如何在内核模式下以三种 阅读全文

posted @ 2018-03-03 22:38 AlanTu 阅读(690) 评论(0) 推荐(0) 编辑

模块机制
摘要:模块是内核的一部分(通常是设备驱动程序),按需动态装入模块可以保证内核达到最小并且使内核非常灵活。一旦装入一个Linux内核模块,那么它就像任何标准的内核代码一样成为内核的一部分,具有相同的权限和职责。一方面凡是由内核“移出”的所有符号都可以在模块中引用;另一方面,除了这个特意移出的符号及系统调用外 阅读全文

posted @ 2018-02-22 19:38 AlanTu 阅读(400) 评论(0) 推荐(1) 编辑

导航