Linux基本概念
kklvsports
这个作者很懒,什么都没留下…
展开
-
带缓存I/O和不带缓存I/O概念
以下是我对这两者的理解: 首先要明白不带缓冲的概念:所谓不带缓冲,并不是指内核不提供缓冲,而是只单纯的系统调用,不是函数库的调用。系统内核对磁盘的读写都会提供一个块缓冲,当用write函数对其写数据时,直接调用系统调用,将数据写入到块缓冲进行排队,当块缓冲达到一定的量时,才会把数据写入磁盘。因此所谓的不带缓冲的I/O是指进程不提供缓冲功能。每调用一次write或read函数,直接系统调用。 而转载 2014-03-12 22:18:06 · 456 阅读 · 0 评论 -
Linux守护进程
节选自:http://www.cnblogs.com/forstudy/archive/2012/04/03/2427683.html 守护进程 Linux大多数服务都是通过守护进程实现的,完成许多系统任务 0: 调度进程,称为交换进程(swapper),内核一部分,系统进程 1: init进程, 内核调用,负责内核启动后启动Linux系统转载 2014-02-21 22:48:46 · 453 阅读 · 0 评论 -
Linux进程 进程组 会话 控制终端概念
1. 进程组 每个进程除了有一个进程ID之外,还有一个进程组。进程组是一个或多个进程的集合。它们与同一作业相关联,可以接受来自同一终端的各种信号。每个进程组都有唯一的进程组ID。函数getpgrp可以得到进程的进程组ID。 pid_t getpgrp(void); 每个进程组都可以有一个组长进程。组长进程的标识是,其进程组ID等于进程ID。组长进程可以创建一个进程组,创建该组中的转载 2014-03-09 17:54:00 · 623 阅读 · 0 评论 -
Linux内核模块插入和删除简介
Linux 内核具有模块化设计。在引导时,只有少量的驻留内核被载入内存。这之后,无论何时用户要求使用驻留内核中没有的功能,某内核模块(kernel module),有时又称驱动程序(driver)。就会被动态地载入内存。 在安装过程中,系统上的硬件会被探测。基于探测结果和用户提供的信息,安装程序会决定哪些模块需要在引导时被载入。安装程序会设置动态载入机制来透明地运行。 如果安装后添加了原创 2014-03-16 22:00:40 · 2572 阅读 · 0 评论 -
信号量、互斥体和自旋锁
信号量、互斥体和自旋锁 一、信号量 信号量又称为信号灯,它是用来协调不同进程间的数据对象的,而最主要的应用是共享内存方式的进程间通信。本质上,信号量是一个计数器,它用来记录对某个资源(如共享内存)的存取状况。一般说来,为了获得共享资源,进程需要执行下列操作: (1) 测试控制该资源的信号量。 (2) 若此信号量的值为正,则允许进行使用该资源。进程将信号量转载 2014-04-08 20:04:39 · 471 阅读 · 0 评论 -
Linux I/O 端口和 I/O 内存
http://huzoy.blog.163.com/blog/static/560963152010263747121/ 在Arm ,Linux里面,全部都会做phy->virt的映射。映射方式中的一种是静态映射,ioremap是动态映射。在静态映射之后,仍然可以通过ioremap动态映射,也就是一个IO物理地址可以映射到多个虚拟地址。 (1)关于IO与内存空间: 在X转载 2015-03-04 22:10:35 · 460 阅读 · 0 评论