首页
学习
活动
专区
工具
TVP
发布

三木的博客

专栏成员
50
文章
102747
阅读量
28
订阅数
操作系统级虚拟化概述
操作系统级虚拟化 KVM、XEN等虚拟化技术允许各个虚拟机拥有自己独立的操作系统。与KVM、XEN等虚拟化技术不同,所谓操作系统级虚拟化,也被称作容器化,是操作系统自身的一个特性,它允许多个相互隔离的用户空间实例的存在。这些用户空间实例也被称作为容器。普通的进程可以看到计算机的所有资源而容器中的进程只能看到分配给该容器的资源。通俗来讲,操作系统级虚拟化将操作系统所管理的计算机资源,包括进程、文件、设备、网络等分组,然后交给不同的容器使用。容器中运行的进程只能看到分配给该容器的资源。从而达到隔离与虚拟化的目的
宅蓝三木
2018-02-07
2K0
ATOM快捷键操作
光标移动 ·       Alt+Left or Alt+B - Move to the beginning of word ·       Alt+Right or Alt+F - Move to the end of word ·       Cmd+Left or Ctrl+A - Move to the first character of the current line ·       Cmd+Right or Ctrl+E - Move to the end of the line ·    
宅蓝三木
2018-02-07
6630
FUSE分析总结
FUSE简介及原理 FUSE(Filesystem in Userspace)是sourceforge上的一个开源项目,它可以为用户提供编写用户态文件系统的接口。使用FUSE,用户可以不必熟悉Kernel代码,使用标准C库、FUSE库以及GNU C库便可设计出自己需要的文件系统。 FUSE由三个部分组成:FUSE内核模块、FUSE库以及一些挂载工具。 FUSE内核模块实现了和VFS的对接,它看起来像一个普通的文件系统模块;另外,FUSE内核模块实现了一个可以被用户空间进程打开的设备,当VFS发来文件操作请求
宅蓝三木
2018-02-07
3K0
ls命令实现分析
###一、ls命令的功能分析 使用man ls命令查看ls命令手册(功能描述和主要选项摘录如下): List information about the FILEs (the current directory by default).Sort entries alphabetically if none of -cftuvSUX nor --sort. 列出文件(默认当前目录)信息,如果没有-cftuvSUX和--sort选项,就按照字母顺序排序。 -a, --all do not ignore
宅蓝三木
2018-02-07
2K0
基于Linux与lpc3250开发板的交叉开发环境搭建
###一、Bootloader的安装(在windows下进行) 1、什么是Bootloader: 要想弄明白什么是Bootloader,我们先从PC上的bootloader说起。PC上的BIOS和硬盘上的引导记录有着和嵌入式开发板中的bootloader类似的作用。PC的Bootloader由BIOS和MBR组成,BIOS固化在主板的一个芯片上,MBR则是硬盘的主引导扇区的缩写。PC启动后,首先执行BIOS的启动程序,根据用户的COMS设置,BOIS加载硬盘MBR的启动数据,并把系统的控制权交给保存在MBR
宅蓝三木
2018-02-07
1.9K0
Linux系统中的信号量机制
1、信号量的定义: struct semaphore { spinlock_t lock; unsigned int count; struct list_head wait_list; }; 在linux中,信号量用上述结构体表示,我们可以通过该结构体定义一个信号量。 2、信号量的初始化: 可用void sema_init(struct semaphore *sem, int val);直接创建,其中val为信号量初值。也可以用两个宏来定义和初始化信号量的值为1或0: DECLAR
宅蓝三木
2018-02-07
2.6K0
发行版制作及Anaconda基础
Anaconda是用于Fedora, RHEL等Linux发行版的安装程序,可以实现通过LiveCD,PXE,NFS等方式安装Linux系统以及利用kickstart文件实现无人值守的无交互安装。 发行版制作(Fedoran系统环境) 选择所需的软件包。 制作自己的发行版首先要确定你的发行版需要安装哪些软件。决定之后需要把这些软件相应的RPM包拷贝到某个目录,然后在这个目录下执行createrepo命令来创建RPM软件源。 创建ks文件。 ks文件用于指定制作发行版时用到的软件源及软件包,具体语法可参考 k
宅蓝三木
2018-02-07
1.9K0
基于Jenkins和Koji的代码管理及构建系统
<h1>Summary</h1> Currently, we KVM team are maintaining the code repository of the virtualization software(such as QEMU, Libvirt, Kimchi, Linux, etc.) for PowerKVM development team and delivering corresponding RPM packages. We collect patches from mailing
宅蓝三木
2018-02-07
1.3K0
在fedora下使用搜狗拼音输入法
Linux下的拼音输入法实在是不敢恭维,还好有人把搜狗拼音输入法制作成了RPM包.安装此rpm包就可以在Linux下面使用搜狗拼音输入法及其字库了. 第一步,下载RPM包. 百度网盘地址:http://pan.baidu.com/s/1bpblFoN 第二步,安装RPM包. $sudo yum install fcitx-sogoupinyin-0.0.4-1.fc20.x86_64.rpm //注意输入正确的路径 第三步,卸载ibus. $sudo yum remove ibus 第四
宅蓝三木
2018-02-07
2.2K0
Linux shell 程序设计4——shell变量
1、shell变量没有类型,所有变量都被当作字符串来处理。 2、shell变量的命名和c语言相同。 3、shell变量赋值和c语言略有不同,shell赋值要求等号的两边不能出现空格,而在linux C 中,一般为了增强代码的可读性,等号的两边都加一个空格。如果shell变量的赋值为字符串,而且字符串中含有空格,则必须给该字符串加单引号或双引号。 4、shell变量不同于c语言,无需定义可直接赋值使用。例如: #!/bin/bash #This is an example to show how to use
宅蓝三木
2018-02-07
1.8K0
Linux shell 程序设计5——shell中一些特殊符号的用法总结
1、{} 大括号: eg: ls my_{finger,toe}s 这条命令相当于如下两个命令的组合: ls my_fingers ; ls my_toes eg: mkdir {userA,userB,userC}-{home,bin,data} 我们得到 userA-home, userA-bin, userA-data, userB-home, userB-bin, userB-data, userC-home, userC-bin, userC-data,这几个目录 大括号也可用于语句块的构造,命
宅蓝三木
2018-02-07
9210
Linux权限管理
Linux权限管理是其一大特色,优秀的权限管理机制为Linux安全性提供了可靠的保障。 ###一、用户权限管理: root用户是系统的超级用户,是Linux系统的CEO,它具有最高的管理权限,所以一般不用该用户登录系统进行日常的操作与维护,root可将某些权限赋予其他用户来管理系统的某些资源。 su命令用来切换用户,用该命令切换用户时,用户身份和环境变量都发生改变。例如: kelvin@kelvin-laptop:~$ ls examples.desktop workplace 公共的 模板 视频
宅蓝三木
2018-02-07
5.4K0
Linux用户管理
###一、用户管理: Linux系统用户分为三类:超级用户、普通用户和伪用户。其具体区别如下: 超级用户:具有管理系统的一切权限。UID为0。 普通用户:具有有限的权限。UID从500到6000。 伪用户:在/etc/passwd中有记录,但因记录中shell为空,所以不能登录系统。其作用是为了方便管理系统,满足相应的系统进程对文件属主的需要。 用户帐号的配置文件是/etc/passwd,可用sudo gedit /etc/passwd命令查看和修改。文件内容格式如下: root:x:0:0
宅蓝三木
2018-02-07
3K0
FUSE
###一、FUSE简介 FUSE(用户空间文件系统)是这样一个框架,它使得FUSE用户在用户态下编写文件系统成为可能,而不必和内核打交道。FUSE由三个部分组成,linux内核模块、FUSE库以及mount 工具。用户关心的只是FUSE库和mount工具,内核模块仅仅提供kernel的接入口,给了文件系统一个框架,而文件系统本身的主要实现代码位于用户空间中。 FUSE库给用户提供了编程的接口,而mount工具则用于挂在用户编写的文件系统。 FUSE起初是为了研究AVFS(A Virtual Filesyst
宅蓝三木
2018-02-07
3K1
Linux基础知识总结
###一:什么是Linux? Linux被称为类Unix操作系统,遵循POSIX标准。Linux与Unix的最大不同在于源代码的开放性和自由性。 Linux的发音:Linux发音 Linux的发展历史
宅蓝三木
2018-02-07
1.3K0
NBD-网络块设备[翻译]
1997年4月,Pavel Machek 写了他的网络块设备代码,并被当时的Linux Kernel 2.1.55接受。Pavel 在随后的四个发行版(对应的内核版本为55、101、111、132)中维护并升级了他的代码。Andrzej M. Krzysztofowicz贡献了64位机上运行的版本,随后Stephen Tweedie 为其提出了许多的专业建议,尤其是引入了基于信号量的锁机制,使得代码在对称多处理器系统中能够安全的运行。作者们已将其增强以便于运用于工业环境之中。本文描述了网络块设备、驱动、以及
宅蓝三木
2018-02-07
2K0
RPM软件包管理机制之旅
    Linux下的man命令十分实用,可以查看Linux命令的手册。但这些手册只适用于忘记命令的选项时查询之用,如果用来学习Linux下类似于Git, RPM这样庞大的工具就有点吃力了,可谓事倍功半。我在学习Git的时候读过一篇文档——gittutorial,使用: $man gittutorial 命令可以调出该文档。这篇文档并不涵盖git的方方面面,只是介绍了Git管理项目的常规用法,非常适合初学者快速入门。所以本文试图仿照该文档的写法,并不会详细地介绍RPM包的方方面面,而是介绍RPM包最常用的一
宅蓝三木
2018-02-07
2.9K0
bash配置文件的执行顺序
Linux用户在登陆系统之后会启动shell,并按照一定顺序读取shell的配置文件。以bash为例,配置文件的读取顺序如下: /etc/profile 如果是图形界面登陆系统,读取~/.profile,bash配置完毕。 如果是命令行或者ssh登陆系统,读取~/.bash_profile,bash配置完毕。 如果是命令行或者ssh登陆系统,且~/.bash_profile不存在,读取~/.bash_login,bash配置完毕。 如果是命令行或者ssh登陆系统,且~/.bash_profile,~/.ba
宅蓝三木
2018-02-07
1.4K0
为虚拟机vCPU绑定物理CPU
为了提高缓存命中率,提高虚拟机性能,可以将vCPU绑定到指定的物理CPU去执行。具体设置步骤如下: 在宿主机操作系统启动时将用于虚拟机的CPU独立出来,使其上只运行vCPU线程,QEMU进程和少数的管理进程。设置方法即是在内核启动参数中加入: isolcpus=0,1 例如在grub.cfg下面的配置如下: menuentry 'Fedora (3.13.6-200.fc20.x86_64) 20 (Heisenbug)' --class fedora --class gnu-linux -
宅蓝三木
2018-02-07
3.3K0
Kobject浅析
面向对象的思想的确在应用软件的开发中颇具优势,它让一个个纯逻辑的函数和数据变成了一个个有生命的个体。鉴于性能的考虑,系统软件的实现(例如linux kernel)并没有采用面向对象的语言(如C++、Java)。但这丝毫没有影响到用小c找对象。 简单来说,一个对象包含数据以及对这些数据的操作。如果把银行比作一个对象的话,银行里的RMB就是数据、而银行的工作人员就相当于对象中方法(即操作数据的结构)。如果,我们想打劫银行的话,我们只需要拿着枪指着工作人员说,“亲,给我拿500万出来”。当然,如果你是一个比较牛逼
宅蓝三木
2018-02-07
1.5K0
点击加载更多
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档