摘要:转载请说明出处:http://blog.csdn.net/cywosp/article/details/38965239 1. 概述 在Linux系统中一切皆可以看成是文件,文件又可分为:普通文件、目录文件、链接文件和设备文件。文件描述符(file descriptor)是内核为了高效管理已被打开的
阅读全文
摘要:转载于: http://www.cnblogs.com/wang_yb/archive/2013/05/23/3095907.html 内核的内存使用不像用户空间那样随意,内核的内存出现错误时也只有靠自己来解决(用户空间的内存错误可以抛给内核来解决)。 所有内核的内存管理必须要简洁而且高效。 主要内
阅读全文
摘要:转载于:http://www.wowotech.net/linux_kenrel/kobject.html 1. 前言 Kobject是Linux设备模型的基础,也是设备模型中最难理解的一部分(可参考Documentation/kobject.txt的表述)。因此有必要先把它分析清楚。 2. 基本概
阅读全文
摘要:1. 前言 device和device driver是Linux驱动开发的基本概念。Linux kernel的思路很简单:驱动开发,就是要开发指定的软件(driver)以驱动指定的设备,所以kernel就为设备和驱动它的driver定义了两个数据结构,分别是device和device_driver。
阅读全文
摘要:转载于: http://www.wowotech.net/linux_kenrel/dm_sysfs.html 1. 前言 sysfs是一个基于RAM的文件系统,它和Kobject一起,可以将Kernel的数据结构导出到用户空间,以文件目录结构的形式,提供对这些数据结构(以及数据结构的属性)的访问支
阅读全文
摘要:转载于: http://www.wowotech.net/process_management/19.html 一、介绍 当linux系统中的一个进程运行起来的时候,总是要访问系统的资源,访问文件或者向其他的进程发送信号。系统是否允许其进行这些操作?系统是根据什么来判断该进程的权限?这些问题是和进程
阅读全文
摘要:转载于: http://www.wowotech.net/process_management/process_identification.html 一、概述 本文主要描述在linux kernel中如何标识一个或者一组和进程(线程)相关的实体,包括: 1、进程ID(线程组ID) 2、线程ID 3
阅读全文
摘要:转载于: http://www.wowotech.net/process_management/process-creation-2.html 原版字体比较小,另外自己要添加一点标注提示. 本文是Process Creation(一)的延续,主要内容包括: 1、进程描述符中Realtime Mute
阅读全文
摘要:转载于: http://www.wowotech.net/process_management/Process-Creation-1.html 原文字体太小,另外自己做一些标注. 一、前言 为什么要写一个关于进程如何创建的文档?其实用do_fork作为关键字进行索引,你会发现网上的相关文档数以万计。
阅读全文
摘要:转载于: http://www.wowotech.net/process_management/access-once.html 原文中文字的设置字号比较小,转载于此. 一、ACCESS_ONCE解决什么样的问题 我们首先来看一个代码片段(来自__mutex_lock_common函数,位于linu
阅读全文
摘要:转载于:http://www.wowotech.net/process_management/process-tty-basic.html 一、前言 对于任何一种OS,终端部分的内容总是令人非常的痛苦和沮丧,GNU/linux也是如此。究其原因主要有两个,一是终端驱动和终端相关的系统软件承载了太多的
阅读全文
摘要:apt-get update 升级软件列表; apt-get install 安装新软件包 apt-get remove 卸载已安装的软件包(保留配置文档) apt-get –purge remove 卸载已安装的软件包(删除配置文档) apt-get clean 清理系统,不影响安装的软件使用 a
阅读全文
摘要:适用于ubuntu 12.04英文版的系统,其它版本的设置应该是大同小异的。 进入ubuntu系统,在顶部齿状标志找到system... 2.在personal找到Language Support 3.进入Language Support后,在language的页面中点击Install/Remove
阅读全文
摘要:转载于: http://www.cnblogs.com/yatesxu/p/6128575.html 以前仅仅是使用,这里比较系统第讲了一下. 重定向 redirection 每个命令有输入源和输出目的地,默认行为,是标准输入和标准输出。大多数情况,标准输入是键盘,标准输出是屏幕。可以为单独的操作修
阅读全文
摘要:1. Linux进程状态:R (TASK_RUNNING),可执行状态&运行状态(在run_queue队列里的状态) 2. Linux进程状态:S (TASK_INTERRUPTIBLE),可中断的睡眠状态, 可处理signal 3. Linux进程状态:D (TASK_UNINTERRUPTIBL
阅读全文
摘要:转载于: http://blog.csdn.net/vv0_0vv/article/details/7403123 并发控制 信号量与互斥体 信号量 信号量的使用 信号量(semaphore)是用于保护临界区的一种常用方法,他的用法和自旋锁类似,但是,与自旋锁不同的是,当获取不到信号量时,进程不会原
阅读全文
摘要:http://fanli7.net/a/bianchengyuyan/C__/20120725/192687.html 內核版本:2.6.30 平台:arm 在 單處理器不可搶占系統中,使用local_irq_enable和local_irq_disable是消除異步並發源的有效方式。在驅動程序中要
阅读全文
摘要:我们知道在之前的应用程序中,如果我们同时运行两次应用程序的话,则两次都可以同时打开设备,这就是说我们的按键资源同时被两个进程使用。显然这不是我们想要的,那么下面我们就要引入互斥的概念。 关于互斥其实现很简单,就是采用一些标志,当文件被一个进程打开后,就会设置该标志,使其他进程无法打开设备文件。下面,
阅读全文
摘要:转载于: http://www.wowotech.net/kernel_synchronization/atomic.html 一、源由 我们的程序逻辑经常遇到这样的操作序列: 1、读一个位于memory中的变量的值到寄存器中 2、修改该变量的值(也就是修改寄存器中的值) 3、将寄存器中的数值写回m
阅读全文
摘要:蜗窝科技 http://www.wowotech.net/kernel_synchronization/spinlock.html 一、前言 在linux kernel的实现中,经常会遇到这样的场景:共享数据被中断上下文和进程上下文访问,该如何保护呢?如果只有进程上下文的访问,那么可以考虑使用sem
阅读全文