1.之前已经将uboot写到nandflash里面了,接下来将内核zImage.文件系统写到nandflash. 2.编译内核 cd linux-2.6.28_smdk6410 make clean make distclean cp  smdk6410_config .config make menuconfig 将Device Drivers --->Graphics support ---> Support for frame buffer devices ---> select…
Linux内核分析第七周学习笔记--Linux内核如何装载和启动一个可执行程序 zl + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 由源代码生成可执行文件 预处理 => 编译 => 汇编 => 链接 gcc -E hello.c -o hello.i gcc –S hello.i –o hello.s gcc –c hello.s –o hello.o gcc…
由于用的学习材料是<linux设备驱动开发详解(第二版)>,所以linux驱动学习笔记大部分文字描述来自于这本书,学习笔记系列用于自己学习理解的一种查阅和复习方式. #make config(基于文本的最为传统的配置界面,不推荐使用)#make menuconfig(基于文本菜单的配置界面)#make xconfig(要求 QT 被安装)#make gconfig(要求 GTK+被安装)在配置 Linux 2.6 内核所使用的 make config. make menuconfig. mak…
java之jvm学习笔记六(实践写自己的安全管理器) 安全管理器SecurityManager里设计的内容实在是非常的庞大,它的核心方法就是checkPerssiom这个方法里又调用 AccessController的checkPerssiom方法,访问控制器AccessController的栈检查机制又遍历整个 PerssiomCollection来判断具体拥有什么权限一旦发现栈中一个权限不允许的时候抛出异常否则简单的返回,这个过程实际上比我的描述要复杂 得多,这里我只是简单的一句带过,因为这…
一.进入目录 #cd u-boot-1.1.6_sndk6410 二.SD卡 make clean make distclean vim Makefile                                   (/CROSS 修改cross-compile= ....) vim /include/configs/smdk6410.h    (改205行名字,改448行启动方式为SD卡) make smdk6410_config make ./mkmovi              …
如图所示为 X86 PC 上从上电/复位到运行 Linux 用户空间初始进程的流程.在进入与 Linux相关代码之间,会经历如下阶段. ( 1 ) 当系统上电或复位时, CPU 会将 PC 指针赋值为一个特定的地址 0xFFFF0 并执行该地址处的指令.在 PC 机中,该地址位于 BIOS 中,它保存在主板上的 ROM 或 Flash 中. ( 2) BIOS 运行时按照 CMOS 的设置定义的启动设备顺序来搜索处于活动状态并且可以引导的设备. 若从硬盘启动, BIOS 会将硬盘 MBR(主引导…
Chapter 2. 文件系统 2.1 Linux 系统目录结构 命令窗口下输入命令: $ ls /,能够看到根目录下的全部目录及文件 树状目录结构为: 最顶级的目录: / :根目录 / 是根目录,~ 是家目录.Linux 的目录结构为树状结构,源头即是 /,其他目录可通过挂载将它们添加到树中,解除挂载可以移除它们.而每个用户都有其家目录.比如说root用户的家目录是/root,普通用户a的家目录是/home/a. 系统启动必须: /boot:存放的启动Linux 时使用的内核文件,包括连接文件…
三大类文件类型 普通文件:包括文本文件.数据文件.可执行的二进制程序文件 目录文件:linux系统把目录看成一种特殊的文件,利用它构成了文件系统的树形结构 设备文件:把设备也看成是一个文件,例如你的鼠标,你的硬盘,等在linux中表现的就是一个文件 文件类型的标识符 前面谈到linux有多种不同的文件类型,对不同的文件处理方式肯定不同,例如对普通文件和对目录文件处理方式肯定是不同的,那么系统有是怎么识别的呢?,在文件属性里分别用不同的编码给他们做标记就行 下面是 不同文件的不同编码 普通文件(-…
一 内存管理 默认情况下,运行在Linux系统上的每个进程都有各自的内存页面:进程不能访问其他进程正在使用的内存页面. 内核维护着自己的内存区域 用户进程不能访问内核进程的内存 可以创建一些共享内存页面,多个进程可在同一块共用内存区域进行读取和写入操作:内核负责维护和管理这块共用内存区域并控制每个进程访问这块共享区域. 内核的系统内存管理主要是对1.物理内存和虚拟内存(交换空间)2.共享内存的管理 二 软件程序管理 内核创建第一个进程(init进程)来启动系统上所有其他进程 内核启动时,将ini…
  Unit 9 Kernel Timing and Process Latency 内核定时与进程延时 学习目标: A.了解CPU 是怎样追踪时间的 B.调整CPU的访问次数 C.调整调度延时 D.虚拟机上的CPU任务调整   9.1How Linux tracks time Linux下的时间追踪 A. 硬件定时器是靠使用时钟来完成计时的. 包括以下时间资源: a. Real time clock(RTC):实时时钟是用来持久存放系统时间的设备,即便系统关闭后,它也可以靠主板上的微电池提供的…
今天看了一个关于Linux系统安全的视频教程,这个教程有很多的知识点,我会分几篇博文将我的笔记分享出来. 首先是关于Linux文件系统类型的一些知识,Linux有四种常见的文件系统类型(网上大多数是3种,但我觉得链接文件类型应该也算作一种). 1.普通文件(Ordinary File) 普通文件分为两种:文本文件与二进制文件 a.文本文件 以ASCII码形式存储,可用文本编辑器查看. 下面通过一个示例来加深印象,我在home目录下新建了一个无标题文档: 下面我用 ls -l 无标题文档 来查看这…
引言 上一篇博客整理了一下SVM分类算法的基本理论问题,它分类的基本思想是利用最大间隔进行分类,处理非线性问题是通过核函数将特征向量映射到高维空间,从而变成线性可分的,但是运算却是在低维空间运行的.考虑到数据中可能存在噪音,还引入了松弛变量. 理论是抽象的,问题是具体的.站在岸上学不会游泳,光看着梨子不可能知道梨子的滋味.本篇博客就是用SVM分类算法解决一个经典的机器学习问题--手写数字识别.体会一下SVM算法的具体过程,理理它的一般性的思路. 问题的提出 人类视觉系统是世界上众多的奇迹之一.看…
三.Linux磁盘与文件系统的管理 MBR扇区(512B) 磁盘的分区组成 Boot sector    扇区(用来装引导程序) Super block   记录inode与Block的信息 Inode  block中存储文件时,会产生文件属性记录(user,group,文件存储在哪个block中),每个inode记录一个文件(最大128K)(记录一个block消耗4B,最多记录block数为32块)并且消耗128B空间 Block  被分为若干大小为4K的block(划分分区时可以指定其大小)…
System.ConfigurationManager类用于对配置文件的读取.其具有的成员如下: 一.AppSettings AppSetting是最简单的配置节,读写非常简单. 名称 说明 AppSettings 获取当前应用程序默认配置的 AppSettingsSection 数据 ConnectionStrings 获取当前应用程序默认配置的 ConnectionStringsSection 数据 <?xml version="1.0" encoding="utf…
 欢迎装载请说明出处:http://blog.csdn.net/yfqnihao 课程源码:http://download.csdn.net/detail/yfqnihao/4866501 前面第三和第四节我们一直在强调一句话,类装载器和安全管理器是可以被动态扩展的,或者说,他们是可以由用户自己定制的,今天我们就是动手试试,怎么做这部分的实践,当然,在阅读本篇之前,至少要阅读过笔记三. 下面我们先来动态扩展一个类装载器,当然这只是一个比较小的demo,旨在让大家有个比较形象的概念. 第一步,首先…
Hadoop有一个称为HDFS的分布式系统,全称为Hadoop Distributed Filesystem. HDFS有块(block)的概念,默认为64MB,HDFS上的文件被划分为块大小的多个分块,作为独立的存储单元.使用块的好处在于:1. 一个文件大小可以大于集群网络中任意一个磁盘的容量,文件的所有块不需要存储在同一个磁盘上:2.简化存储管理:3.提供数据容错能力和可用性 HDFS集群有2类节点:一个namenode(管理者)和多个datanode(工作者).namenode管理文件系统…
0x00 概述 我们用Logsatsh写配置文件的时候,如果读取的文件太多,匹配的正则过多,会使配置文件动辄成百上千行代码,可能会造成阅读和修改困难.这时候,我们可以将配置文件的输入.过滤.输出分别放在不同的配置文件里,甚至把输入.过滤.输出再次分离,放在不同的文件里. 这时候,后期再需要增删改查内容的时候,就容易维护了. 0x01 logstash如何读取多个配置文件 我们知道在启动logstash的时候,只要加上-f /you_path_to_config_file就可以加载配置文件了,如果…
四.文件与文件系统的压缩与打包 用途: 传输时减少带宽 Linux系统常见的压缩命令 Compass(旧版压缩,并且在centOS中默认为不安装) gzip, zcat bzip2, bzcat zip 打包命令tar Tar自身不存在压缩功能 归档: 讲多个文件放在一个文件中 C表示创建一个打包文件,v表示显示打包过程,f为指定打包文件的名并且以.tar结尾 完整备份工具 常用的备份方式 完全备份:将硬盘中所有的数据全部备份,消耗很多的空间 增量备份:在完全备份的基础上,只备份两个时间间隔内所…
(欢迎批评指正) 一,打开.cdd配置文件时出错: 解决:在FlashBurn配置窗口中,Conversion Cmd一栏可不用管:      菜单Program—Download FBTC,load之后TargetSystem一栏中显示“Connected”!.可进行下一步. 二.擦除flash之后不loadfpga配置程序而直接load烧写文件,无法烧写成功.Can't Run Target CPU: Error0x0000000C/-2044 Error during: Register,…
6.15 Write command 写命令 写命令写数据和元数据,如果适用介质,发到逻辑块相应的I/O controller.主机也可以指定保护信息,作为操作的一部分包含进来. 命令用Command Dword 10,Command Dword 11,Command Dword 12,Command Dword 13,Command Dword 14,和Command Dword 15区域.如果命令使用PRPs传输数据,那么元数据指针,PRP Entry 1,和PRP Entry 2 域就被使…
前言 JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式,目前使用特别广泛. 采用完全独立于编程语言的文本格式来存储和表示数据. 简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言. 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率. 在 JavaScript 语言中,一切都是对象.因此,任何JavaScript 支持的类型都可以通过 JSON 来表示,例如字符串.数字.对象.数组等.看看他的要求和语法格式:…
OS模块中关于文件/目录常用的函数使用方法 函数名 使用方法 getcwd() 返回当前工作目录 chdir() 改变工作目录 listdir(path='.') 列举指定目录中的文件名('.'表示当前目录,'..'表示上一级目录) mkdir(path) 创建单层目录,如果目录已存在抛出异常 makedirs(path) 递归创建多层目录,如果该目录已存在则抛出异常,注意:'E:\a\b'和'E:\a\c'并不会冲突) remove(path) 删除文件 rmdir(path) 删除单层目录,…
1.前言 本文主要是对Microsoft Extensible Firmware Initiative FAT32 File System Specification中文翻译版的学习笔记. 每个FAT文件系统基本区域由4部分组成,这些基本区域按如下顺序排列: 对于FAT32典型区域分布如下: 本节主要介绍文件和目录数据区长目录项 2.长目录项 长目录项就是拥有如下普通属性的短目录项 3.长目录项结构 4.长短目录项的组织和联结 (1)由于早期的MS-DOS/Windows系统中,只有短目录是可见…
1.前言 本文主要是对Microsoft Extensible Firmware Initiative FAT32 File System Specification中文翻译版的学习笔记. 每个FAT文件系统基本区域由4部分组成,这些基本区域按如下顺序排列: 对于FAT32典型区域分布如下: 本节主要介绍根目录区的内容 2.根目录区 (1)FAT目录是由32Bytes的线性表构成的“文件” (2)根目录是一个特殊的目录,存在每一个FAT卷中 (3)对于FAT12/FAT16: -根目录存储在磁盘…
1.前言 本文主要是对Microsoft Extensible Firmware Initiative FAT32 File System Specification中文翻译版的学习笔记. 每个FAT文件系统基本区域由4部分组成,这些基本区域按如下顺序排列: 对于FAT32典型区域分布如下: 本文主要介绍保留区的FatInfo部分,FatInfo的扇区号存放在BSP_FSInfo中,对于Microsoft的操作系统,此值为1,位于保留区的启动扇区与BPB之后 2.FSInfo结构 3.备份启动扇…
1.前言 本文主要是对Microsoft Extensible Firmware Initiative FAT32 File System Specification中文翻译版的学习笔记. 每个FAT文件系统基本区域由4部分组成,这些基本区域按如下顺序排列: FAT32典型布局如下: 上一部分主要介绍了Rerverd Region中的启动扇区与BPB,本节继续介绍Fat Region Fat Region包含Fat表,它位于Rerserved Region之后 2.FAT区(Fat Data S…
1.前言 本文主要是对Microsoft Extensible Firmware Initiative FAT32 File System Specification中文翻译版的学习笔记. 每个FAT文件系统基本区域由4部分组成,这些基本区域按如下顺序排列: 对于FAT32典型区域分布如下: 本文主要介绍保留区的启动扇区与BPB部分 2.启动扇区与BPB(Bios Parameter Block) 注:[1]BPB位于FAT文件系统 基本区域的Reserved Region: [2]BPB是FA…
void * kmalloc(size_t size, gfp_t gfp_mask); kmalloc()第一个参数是要分配的块的大小,第一个参数为分配标志,用于控制kmalloc()的行为. kmalloc()的底层依赖于__get_free_pages()来实现,分配标志的前缀GFP正好是这个底层函数的缩写. GFP_ATOMIC:在中断处理函数.底半部.tasklet.定时器处理函数以及URB完成函数中,在调用者持有自旋锁或读写锁时以及当驱动将current->state修改为非TASK…
本笔记摘抄自:https://www.cnblogs.com/liyangLife/p/4797583.html,记录一下学习过程以备后续查用. 一.文件系统 1.1文件系统类的介绍 文件操作类大都在System.IO命名空间里,FileSystemInfo类是所有文件系统类的基类.FileInfo与File表示文件系统中的文件,DirectoryInfo与Directory 表示文件系统中的文件夹,Path表示文件系统中的路径,DriveInfo提供对有关驱动器信息的访问. 注意,XXXInf…