块设备是能随机存取装置固定大小的数据表设备.如硬盘:字符设备(如串口和键盘)它是按照字符流进入有序进行.不同之处在于是否足够的随机存取数据--这时候,你可以随心所欲地从一个位置跳到访问设备和位置.复杂多,实际上内核在块设备上下了大工夫--块I/O层. 基础概念 块设备中最小的可寻址单元是扇区. 文件系统的最小寻址单元是块. 所谓的缓冲区是块在内存中的表示. 对于一个缓冲区(块),内核须要知道它的控制信息.这时须要一个结构进行描写叙述--缓冲区头. I/O调度机制 首先,这里的I/O调度指的是磁盘…
我理解的系统调用,用户进程和内核是内核提供了一个接口进行交互.除了异常和下降外.内核系统调用是唯一合法入境.像/proc还通过系统调用访问. 系统调用的意义: 让用户进程受限地訪问硬件设备 为用户空间提供一种硬件的抽象接口 提供了创建新进程并与已有进程进行通信的机制 提供了申请操作系统其它资源的能力 保证系统稳定可靠,避免应用程序恣意妄为 系统调用的基本原理: 系统调用通常的入口是C库中定义的函数,也能够是自己定义的函数(通过syscall进行调用).每一个系统调用被赋予一个系统调用号.通过这个…
基本介绍 块设备驱动程序通过主传动固定大小数据的随机访问设备 Linux核心Visual块设备作为基本设备和不同的字符设备类型 Linux块设备驱动程序接口,使块设备最大限度地发挥其效用.一个问题 一个数据块指的是固定大小的数据,而大小的值由内核确定 数据块的大小一般是4096个字节.可是能够依据体系结构和所使用的文件系统进行改变 与数据块相应的是扇区,它是由底层硬件决定大小的一个块,内核所处理的设备扇区大小是512字节 假设要使用不同的硬件扇区大小.用户必须对内核的扇区数做相应的改动 注冊 注…
描叙 Linux 核心在启动的时候可以接受指定的"命令行参数"或"启动参数".在通常情况下,由于核心有可能无法识别某些硬件,或可能将某些硬件识别为不正确的配置,因此,这些参数可以被用来提供正确的硬件配置参数.当Linux核心被BIOS直接启动的时候(比如说你的核心是从使用了 "cp zImage /dev/fd0" 命令制造的 Linux 启动软盘来启动的),你无法指定任何的启动参数.因此,为了能够指定启动参数,你必须使用某些能够传递启动参数的软…
使用列表 我认为最好的方式,成为熟悉的核心列表功能是看一些简单的例子,素材去更好的理解链表. 以下是一个样例.包括创建.加入.删除和遍历链表. <span style="font-size:18px;">#include <stdio.h> #include <stdlib.h> #include "list.h" struct kool_list{ int to; struct list_head list; int from;…
使用df命令即可查看.df 是来自于coreutils 软件包,系统安装时,就自带的:我们通过这个命令可以查看磁盘的使用情况以及文件系统被挂载的位置: 示例:[root@localhost ~]# df -l 文件系统 容量 已用 可用 已用% 挂载点 /dev/sda3 4956316 3565088 1135396 76% / tmpfs 241320 12 241308 1% /dev/shm /dev/sda6 4806904 2523708 2039012 56% /media/dis…
Linux以列表格式显示块设备 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ lsblk -l NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 465.8G 0 disk sda1 8:1 0 60G 0 part sda2 8:2 0 1K 0 part sda5 8:5 0 102G 0 part sda6 8:6 0 102G 0 part sda7 8:7 0 101G 0 part sda8…
Linux核心命令 strace(查看系统调用的一个过程) 例:strace cat /test.txt netstat perf top pidstat mpstat dstat vmstat slabtop free top tcpdump ip nicstat dtrace ping dtrace blktrace iptop iostat stap 文本处理类的命令: wc wc [option] [file]... -l: 统计行数 -c: 统计字节数 -w:统计单词数 tr tr:…
Linux分页机制之概述--Linux内存管理(六) 2016年09月01日 19:46:08 JeanCheng 阅读数:5491 标签: linuxkernel内存管理分页架构更多 个人分类: ┈┈[理解Linux内存管理] https://blog.csdn.net/gatieme/article/details/52402861 全系列 非常好 就是自己学习不会..      版权声明:本文为博主原创文章 && 转载请著名出处 @ http://blog.csdn.net/gati…
本文介绍Linux下按扇区读写块设备(示例TF卡),实际应用是在Android系统上,主要方法如下: 1.找到sdcard的挂载点,在android2.1系统下应该为/dev/block/mmcblk0p1,或是/dev/block/mmcblk0,而不是/sdcard或/mnt/sdcard 2.修改权限,默认是没有权限按扇区读写块设备的(下文打开句柄为空),连接手机到计算机,通过adb Shell进入手机,将/dev/block/mmcblk0p1权限设置成777,命令如下: chmod 7…