Linux
文章平均质量分 64
轩辕夏禹
这个作者很懒,什么都没留下…
展开
-
Ubuntu 安装 QQ (简易安装)
我的系统是Ubuntu 12.04,完美实现。首先我不建议直接先安装wine,再安装QQ,一是安装完完整的wine太大,二是desktop版的ubuntu缺少很多相关文件,自己要去一个个安装(我尝试用这个方法做过,很费时间,没一天半载装不好,且很容易出错,网上搜了大量资料,相关文件还不知道怎么下,因为系统是13.04了。。。更主要的俺是菜鸟。。。),三是本人安装的是双系统,给linux分配的空转载 2013-05-16 20:30:42 · 1214 阅读 · 0 评论 -
Makefile使用总结
1. Makefile 简介Makefile 是和 make 命令一起配合使用的.很多大型项目的编译都是通过 Makefile 来组织的, 如果没有 Makefile, 那很多项目中各种库和代码之间的依赖关系不知会多复杂.Makefile的组织流程的能力如此之强, 不仅可以用来编译项目, 还可以用来组织我们平时的一些日常操作. 这个需要大家发挥自己的想象力. 本篇博客是基于 {转载 2015-09-17 15:49:39 · 712 阅读 · 0 评论 -
Linux守护进程设计规范及python实现
转自http://blog.csdn.net/dysj4099/article/details/18219411由于需要为OpenStack中的虚拟机设计监控Agent,因此需要一个稳妥、可靠并简单的守护进程实现作为基础框架,故研究了一下Linux系统中的守护进程。首先,守护进程是一类在后台执行,生命周期较长的进程,它一般随系统启动运行,在系统关闭的时候停止。翻译了一下《Advan转载 2015-06-08 11:27:58 · 1276 阅读 · 0 评论 -
Linux 线程同步---条件变量
互斥锁:用来上锁。条件变量:用来等待,当条件变量用来自动阻塞一个线程,直到某特殊情况发生为止。通常条件变量和互斥锁同时使用。 函数介绍: 1.名称:pthread_cond_init目标: 条件变量初始化头文件:#include 函数原形:int pt转载 2014-07-29 23:13:30 · 588 阅读 · 0 评论 -
Linux的inode
http://www.cnblogs.com/itech/archive/2012/05/15/2502284.html一、inode是什么?理解inode,要从文件储存说起。文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。 操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连转载 2014-07-27 21:23:14 · 715 阅读 · 0 评论 -
浅析Linux操作系统是如何工作的
实验五 SA12226267Linux操作系统工作的基础存储程序计算机存储程序计算机最早是由著名数学家冯·诺伊曼等人在1946年总结并明确提出来的,因此又被称为冯·诺伊曼计算机。存储程序和程序控制原理的要点是,程序输入到计算机中,存储在内存储器中(存储原理),在运行时,控制器按地址顺序取出存放在内存储器中的指令(按地址顺序访问指令),然后分析指令,执行指令的功能,遇到转移指令时,则转移原创 2013-06-27 16:36:16 · 1653 阅读 · 0 评论 -
进程切换过程分析
参考《深入理解Linux内核(第三版)》进程切换为了控制进程的执行,内核必须有能力挂起正在CPU上运行的进程,并恢复以前挂起的某个进程的执行。这种行为被称为进程切换,任务切换或上下文切换。下面几节描述在Linux中进行进程切换的主要内容。硬件上下文尽管每个进程可以拥有属于自己的地址空间,但所有进程必须共享CPU寄存器。因此要恢复一个进程的执行之前,内核必原创 2013-06-27 14:21:59 · 7402 阅读 · 0 评论 -
Linux线程属性总结
线程属性标识符:pthread_attr_t 包含在 pthread.h 头文件中。[c] view plaincopy//线程属性结构如下: typedef struct { int etachstate; //线程的分离状态 int转载 2014-08-24 15:14:40 · 2136 阅读 · 0 评论 -
实验:计算机是怎样工作的?
实验一 ID SA12226267 首先,概述一下编译链接的过程:C语言的编译链接过程是将程序源代码转换成可以运行的可执行文件,需要进行编译和链接。编译就是把文本形式源代码(高级语言指令)转换为功能等效的汇编代码。链接是把目标文件、操作系统的启动代码和用到的库文件链接最终生成二进制可执行代码的过程。完整过程可以描述如下():C源程序--->预处理(.c)--->编译(.s)--->汇编(.原创 2013-05-17 15:49:26 · 1185 阅读 · 0 评论 -
Ubuntu 内核编译
实验环境:Ubuntu12.04LTS 内核版本 3.5.0 更新内核版本3.9.0 首先是准备条件:①、有一台装有ubuntu 12.04的机器②、先移步到http://www.kernel.org/下载linux稳定版内核(注:可以从科大镜像下载,速度快 http://mirrors.ustc.edu.cn/linux-kernel/ )③、拥有root转载 2013-06-20 15:31:14 · 1446 阅读 · 0 评论 -
Linux GCC常用命令
1简介2简单编译2.1预处理2.2编译为汇编代码(Compilation)2.3汇编(Assembly)2.4连接(Linking)3多个程序文件的编译4检错5库文件连接5.1编译成可执行文件5.2链接5.3强制链接时使用静态链接库1简介GCC 的意思也只是 GNU C Compiler 而已。经过了这么多年的发展,GCC 已经不仅仅能支持 C转载 2013-05-16 23:51:56 · 624 阅读 · 0 评论 -
vim编辑器设置Tab键
输入命令,打开vim的配置文件:sudo vim /etc/vim/vimrc在最末尾添加一行set tabstop=4 保存并退出即可。若配置前已经打开vim,需要重新启动才能生效。原创 2013-05-17 00:18:16 · 1305 阅读 · 0 评论 -
vim复制、粘贴以及配置总结
两篇使用的vim复制粘贴比较高级的用法http://www.cnblogs.com/hustcat/articles/1791371.html用vim这么久 了,始终也不知道怎么在vim中使用系统粘贴板,通常要在网上复制一段代码都是先gedit打开文件,中键粘贴后关闭,然后再用vim打开编辑,真的不 爽;上次论坛上有人问到了怎么在vim中使用系统粘贴板,印象里回复很多,有好几页的回转载 2013-05-17 00:22:55 · 46274 阅读 · 0 评论 -
实验二:进程的创建与可执行程序的加载
SA12226267 在linux中,有三种方式可以启动新进程:system系统调用,fork()以及exec函数簇。下面分别看看这三种方式:1.system调用Linux中system的源码如下:int system(const char * cmdstring){ pid_t pid; int status; if(cmdstring == NULL) re原创 2013-05-30 22:12:06 · 1332 阅读 · 0 评论 -
linux命令mkfs.ext3用法
本文转自:http://linux008.blog.51cto.com/2837805/541506linux命令mkfs.ext3可以把硬盘格式化成ext3文件系统 要使用一块新的硬盘,我们必须将它格式化建立合适的文件系统(linux:ext2,ext3等,windows:ntsf,fat32),并挂载到相应的目录下我们才可以使用。比如我们有一块转载 2013-06-20 20:08:22 · 1723 阅读 · 0 评论 -
用户态到内核态切换分析
本文转载自http://www.cnblogs.com/justcxtoworld/p/3155741.html本文将主要研究在X86体系下Linux系统中用户态到内核态切换条件,及切换过程中内核栈和任务状态段TSS在中断机制/任务切换中的作用及相关寄存器的变化。 一:用户态到内核态切换途径: 1:系统调用 2:中断转载 2013-06-27 14:53:21 · 1831 阅读 · 0 评论 -
linux下静态库、动态库总结
一、基本概念1.1、什么是库 在 windows 平台和 linux 平台下都大量存在着库。 本质上来说库是一种可执行的二进制代码(但不可以独立执行),可以被操作系统载入内存执行。 由于 windows 和 linux 的平台不同(主要是编译器、汇编器和连接器 的不同),因此二者库的二进制是不兼容的。 本文仅限转载 2015-09-23 13:48:51 · 1087 阅读 · 0 评论