如何烧写内核和文件系统

如何烧写内核和文件系统
如何烧写内核和文件系统

如何烧写内核和文件系统

(针对友善之臂mini2440开发板)

一、手动烧写内核和文件系统(所有需要的文件必须放在同tftp 所在的目录,否则不能烧写)。

1.打开超级终端(超级终端的配置在另一个文档中),输入命令print; 查看环境变量和IP地址(主机地址serverip和开发板地址ipaddr);如何设置IP:

(1)设置本机IP:用命令:set serverip 192.168.2.158

(2)设置开发板IP:用命令:set ipaddr 192.168.2.159

(3)保存设置:用命令:saveenv

2.所有的IP配置正确后,可以用ping命令测试网络是否连通,出现如下提示则网络正常;

3.此时我们打开tftp服务器,选定我们预先设置的IP,然后最小化;

(本次烧写需要的所有文件)

4.输入:nand erase 0x20000 0x3fb0000

擦出nand flash 中从0x20000处后面的0x3fb0000个字节;

5.输入:tftp 30000000 uImage

从tftp服务器上下载内核文件uImage到内存0x30000000地址处;

6.输入:nand write.jffs2 30000000 0x20000 0x1E0000

从内存地址0x30000000 中开始将内核文件写入到nand flash 地址中从0x20000 到后面0x1E0000地址处;

7.输入:tftp 30000000 rootfs.img

从tftp 服务器上下载文件系统镜像文件到内存0x30000000中;

8.输入:nand write.jffs2 30000000 0x200000 0x2000000

从内存地址0x30000000 中开始将文件系统写入到nand flash 地址中从0x200000 到后面0x2000000地址处;

9.输入:set ipaddrs

ip=$(ipaddr):$(serverip):$(serverip):255.255.255.0:lishang feng:eth0:off

(只能一行,不能有换行。)

设置所需要的IP配置;

10.输入:set bootargs root=/dev/mtdblock1 rw rootfstype=jffs2 noinitrd init=/linuxrc console=ttySAC0,115200 $(ipaddrs) 设置环境变量;

11.输入:saveenv

保存环境变量;

12.输入:reset

重新启动;

13.至此手动烧写就完成了。

二、自动烧写内核和文件系统(此时我们需要一个已经做好的脚本文件autoflash.img,这个文件也需要放在tftp目录下)。

1.启动u_boot界面;

2.配置主机和开发板的IP(同手动下载);

3.输入:tftp 30000000 aotuflash.img

载入自动烧写的脚本文件到内存;

4.输入:autoscr 30000000

自动启动烧写程序,从内存0x30000000地址处开始自动烧写内核和文件系统;

5.至此自动烧写就完成了。

完成后的界面:

制作人:尚贤博学

于2013年3月2号西安石油大学制作完成

(希望能帮助到广大热爱嵌入式的朋友们)

Linux内核—文件系统模块的设计和开发

Linux内核—文件系统模块的设计和开发 郑小辉 摘要:目前,Linux技术已经成为IT技术发展的热点,投身于Linux技术研究的社区、研究机构和软件企业越来越多,支持Linux的软件、硬件制造商和解决方案提供商也迅速增加,Linux在信息化建设中的应用范围也越来越广,Linux产业链已初步形成,并正在得到持续的完善。随着整个Linux产业的发展,Linux技术也处在快速的发展过程中,形成了若干技术热点。 本文介绍了Linux的发展和特点,以及与其他文件系统的区别。文中主要是对Linux2.4.0内核文件系统源代码的分析,并参考其文件格式设计一个简洁的文件系统。源代码的分析主要介绍了VFS文件系统的结构,Linux自己的Ext2文件系统结构,以及文件系统中的主要函数操作。 在设计的简洁文件系统中,通过调用一些系统函数实现了用户的登录、浏览目录、创建目录、更改目录、创建文件以及退出系统功能。 关键字:Linux 源代码分析文件系统Ext2 Linux内核

Linux kernel -Design and development for the File System Module Zheng xiaohui Abstract: Currently, Linux IT technology has become a hot development technology. Participating in Linux technology research communities, research institutes and software enterprises are in support of Linux more and more, software and hardware manufacturers and solution providers have increased rapidly, In the development of the information industry the Linux application is also increasing, Linux industry chain has taken shape, and is sustained improvemently. With the entire industry in the development of Linux, and Linux is also at the rapid development process, formed a number of technical points. This paper presents the development of Linux and features, and with other file system differences. The main text of the document is Linux2.4.0 system kernel source code analysis, and I reference its file format to design a simple file system. The analysis of the source code mainly on the VFS file system structure, Linux Ext2 its own file system structures, file systems and the main function operation. In the design of the file simple system, some system function is used to achieve function such as: the user's login, browse catalogs, create directories, Change directory, create documents and withdraw from the system function and etc. Key words: Linux, the source code, file system, Ext2, Linux kernel

通达信炒股软件使用技巧精华

通信达炒股软件使用技巧精华 选股思想 (1)前几日资金进出比较平稳,单日突然有大资金介入,简化了一点就拿前一天或前几天的来比了。 (2)选择中线走强的个股,在一段时间的调整后突然起动 (3)如果个股刚刚被爆炒,请警惕主力诱多;只有在确认该股未走弱且止跌时大资金介入才能关注 快捷键使用: .400 热门板块分析; .401 历史行情报表; .402 强弱分析报表; .403 区间涨跌幅度; .404 区间换手排名; .405 区间量变幅度; .406 区间震荡幅度; 80深沪A综合排名; 81沪A综合排名; 83深A综合排名; 87 深沪A综合排名; 89 中小企业综合排名; K线快捷键: 年K线:Y 季K线:S 月K线:MO 周K线:W 日K线:D 60分钟:M6 30分钟:M3 15分钟:M15 5分钟:M5 1分钟:M1 用键盘精灵输入91,92,...912 也可一步进入各种周期K线 数字键:比如1,61,81,10,91等 点系列键:比如.101,.201,.301 (909) 功能键:比如F1,F2... 空格键,减号键,TAB等 组合键:比如Ctrl+V,Alt+1,Ctrl+Z等 1.Ctrl+V 切换前复权与还原 Ctrl+B切换后复权与还原 2.在分时图或分析图界面下,使用Ctrl+W进行本屏的区间统计

3.Ctrl+M 按当前的股票集合进入多股界面 4.Ctrl+R 所属析块 5.Ctrl+D 系统设置 6.Ctrl+Z 加入到板块 Shift+Ctrl+Z 从板块中删除 7.在分时图或分析图界面下,Ctrl+O 叠加股票,Ctrl+G 删除叠加 8.Ctrl+J 进入主力大单,再按Ctrl+J 退回 9.Ctr+F进入公式编辑器 10.Shift+F10 进入基本权息资料界面 11.在有信息地雷的画面,按Shift+回车键进入信息地雷 12.Ctrl+1,Ctrl+2显隐功能树和辅助区 Ctrl+3,Ctrl+4显隐工具栏和状态栏 13.Ctrl+L显隐右边信息区(也可以敲 .6) 14. 快速排名点系列键 .202至.226 15. 热门板块分析点系列键 .400 15.如果有自定义的版面,使用点系列键 .001至.099 16.使用减号键"-"来启动或停止"自动换页" 17.在走势图或分析图画面,使用加号键"+"来切换右下角的内容,Shift+加号键反向切换 18.在报价界面和报表界面,使用空格键打开股票集合的菜单等,使用]或[键切换各分类 19.深证100 快捷键:100 上证180 快捷键:180 沪深300 快捷键:300 20.在财经资讯和信息地雷浏览过程中,可以连续按回车键或连续双击鼠标来快速切换标题区和内容区 21.新版本支持16(信息地雷),18(股改信息),19(投资日记) 22.画线工具:Alt+F12 23.条件选股 .905或按Ctrl+T 定制选股 .906 智能选股 .907 综合选股 .909 24.Ctrl+P 全屏和非全屏的切换全屏显示画面更清爽干净 25. 快捷键 67,87 全市场的涨幅排名和综合排名 26.Atl+数字键的用途: 在走势图画面,切换多日分时图;在分析图画面,切换子窗口个数 27.TAB的用途:在行情报价画面,切换行情信息和财务信息,在分时图画面,切换上下午半场,在分析图画面,叠加或删除叠加均线 28.中括号键"[ ""]"的用途:在行情报价画面,分类股票切换;在分析图用于轮换周期。 29.5.51版本以上支持的快捷键:30:切换关联股票 31:理财金算盘 32:个人理财 30.Ctrl+Q(新版本)支持对某只股票标记文本信息 31.Ctrl+Tab切换打开的几个窗口 通过菜单项后面的提示,键盘精灵的提示和帮助文件等,大家可以知道更多的快捷键. 市场雷达设置:?910 条件预警设置:?918 详细买卖盘快捷键:M 或点击K线右下方:盘 通达信软件有强大的排序功能,能够随意添加排序项目及指标,并对排序周期没有限定,可以更加排序周期,对实盘操作有着十分重要的参考意见!!

实验四Linux内核移植实验

合肥学院 嵌入式系统设计实验报告 (2013- 2014第二学期) 专业: 实验项目:实验四 Linux内核移植实验 实验时间: 2014 年 5 月 12 实验成员: _____ 指导老师:干开峰 电子信息与电气工程系 2014年4月制

一、实验目的 1、熟悉嵌入式Linux的内核相关代码分布情况。 2、掌握Linux内核移植过程。 3、学会编译和测试Linux内核。 二、实验内容 本实验了解Linux2.6.32代码结构,基于S3C2440处理器,完成Linux2.6.32内核移植,并完成编译和在目标开发板上测试通过。 三、实验步骤 1、使用光盘自带源码默认配置Linux内核 ⑴在光盘linux文件夹中找到linux-2.6.32.2-mini2440.tar.gz源码文件。 输入命令:#tar –jxvf linux-2.6.32.2-mini2440-20110413.tar对其进行解压。 ⑵执行以下命令来使用缺省配置文件config_x35 输入命令#cp config_mini2440_x35 .config;(注意:x35后面有个空格,然后有个“.”开头的 config ) 然后执行“make menuconfig”命令,但是会出现出现缺少ncurses libraries的错误,如下图所示: 解决办法:输入sudo apt-get install libncurses5-dev 命令进行在线安装ncurses libraries服务。

安装好之后在make menuconfig一下就会出现如下图所示。 ⑶配置内核界面,不用做任何更改,在主菜单里选择退出,并选“Yes”保存设置返回到刚命令行界面,生成相应配置的头文件。 编译内核: #make clean #make zImage 在执行#make zImage命令时会出现如下错误: 错误:arch/arm/mach-s3c2440/mach-mini2440.c:156: error: unknown field 'sets' specified in initializer 通过网上查找资料 于是在自己的mach-mini2440.c中加入 #include

操作系统简单文件系统设计及实现

简单文件系统的设计及实现 一、实验目的: 1、用高级语言编写和调试一个简单的文件系统,模拟文件管理的工作过程。从而对各种文件操作命令的实质内容和执行过程有比较深入的了解 2、要求设计一个 n个用户的文件系统,每次用户可保存m个文件,用户在一次运行中只能打开一个文件,对文件必须设置保护措施,且至少有Create、delete、open、close、read、write等命令。 二、实验内容: 1、设计一个10个用户的文件系统,每次用户可保存10个文件,一次运行用户可以打开5个文件。 2、程序采用二级文件目录(即设置主目录[MFD])和用户文件目录(UED)。另外,为打开文件设置了运行文件目录(AFD)。 3、为了便于实现,对文件的读写作了简化,在执行读写命令时,只需改读写指针,并不进行实际的读写操作 4、算法与框图 ?因系统小,文件目录的检索使用了简单的线性搜索。 ?文件保护简单使用了三位保护码:允许读写执行、对应位为 1,对应位为0,则表示不允许读写、执行。 ?程序中使用的主要设计结构如下:主文件目录和用户文件目录( MFD、UFD); 打开文件目录( AFD)(即运行文件目录) 文件系统算法的流程图如下

三、工具/准备工作: 在开始本实验之前,请回顾教科书的相关内容。并做以下准备: 1) 一台运行Windows 2000 Professional或Windows 2000 Server的操作系统的计算机。 2) 计算机中需安装Visual C++ 6.0专业版或企业版 四、实验要求: (1)按照学校关于实验报告格式的要求,编写实验报告(含流程图); (2)实验时按两人一组进行分组,将本组认为效果较好的程序提交检查。

文件系统介绍

文件系统简介: 理论上说一个嵌入式设备如果内核能够运行起来,且不需要运行用户进程的话,是不需要文件系统的。文件系统简单的说就是一种目录结构,由于linux操作系统的设备在系统中 是以文件的形式存在,将这些文件进行分类管理以及提供和内核交互的接口,就形成一定的目录结构也就是文件系统。文件系统是为用户反映系统的一种形式,为用户提供一个检测控制系统的接口。 根文件系统,就是一种特殊的文件系统。那么根文件系统和普通的文件系统有什么区别呢?由于根文件系统是内核启动时挂在的第一个文件系统,那么根文件系统就要包括Linux 启动时所必须的目录和关键性的文件,例如Linux启动时都需要有用户进程init对应的文件,在Linux挂载分区时Linux一定会找/etc/fstab这个挂载文件等,根文件系统中还包括了许多的应用程序,如/bin目录下的命令等。任何包括这些Linux 系统启动所必须的文件的文件系统都可以称为根文件系统。 Linux支持多种文件系统,包括ext2、ext3、vfat、ntfs、iso9660、jffs、ramfs和nfs 等,为了对各类文件系统进行统一管理,Linux引入了虚拟文件系统VFS,为各类文件系统提供一个统一的操作界面和应用编程接口。下图是linux文件系统层次关系图。 MTD MTD(memory technology device内存技术设备)是用于访问memory设备(ROM、flash)的Linux的子系统。MTD的主要目的是为了使新的memory设备的驱动更加简单,为此它在硬件和上层之间提供了一个抽象的接口。MTD的所有源代码在/drivers/mtd子目录下。

通达信软件神奇功能一览

软件神奇功能一览: 1、系统—数据维护工具—恢复到系统刚安装状态【可帮助不小心删掉一些功能又找不到的客户。】 2、功能—理财金算盘31--【方便给客户演示各种理财方式的收益率】 3、功能—在线人气33--【给客户提供一种新的选股方式】 4、功能—选股器—智能选股【给客户提供一种新的选股方式】 5、功能—预警系统—市场雷达和条件预警【给客户提供一种新的选股方式】 6、主力监控精灵调出五种方式:1、Ctrl+J 2、功能—预警系统3、分析4、华彩综合屏 5、页面右下方状态栏上的黄色箭头 7、功能—江恩正方用法:起始点:选择一段行情中的转折点价位。单位值(步长):指数价位数值为千分之二到千分之三之间。个股数值为百分之二到百分之三之间。【帮助预判支撑位和阻力位】 8、功能—板块全景图/热点星空图【给客户一种新的看股盯盘方式】 9、报价—沪深ETF基金/基金分析平台【给客户讲解基金或客户选择基金最全面清晰的的界面】 10、报价—热门板块分析. 400【适合喜欢板块研究的客户】 11、报价—大字报价【适合老年客户和视力不好的客户】 12、分析—多股同列Ctrl+M/多周期同列Ctrl+X【适合短线操作的客户】 13、港股期货—股指期货.647【通过未来几个月股指期货的价格可以帮助客户预判未来的大盘价位。】 14、资讯—公告消息—信息港资讯【可以查找当天黄金价格、外汇牌价、存款准备金率、世界主要股指等常用信息】 15、资讯—服务咨询,出来的界面与财经资讯相同,财经资讯快捷键F7,在功能里也能找到财经资讯子菜单,或者工具—功能树。但是记住快捷键F7最方便。 16、资讯—信息地雷【帮助客户了解一些即时信息】 17、工具—滚动资讯【帮助那些不小心删掉下方跑马灯的客户恢复的选项】 18、工具—自动换页【帮助那些自选股多的客户看盘、免去手动翻页的烦恼】 19、工具—系统设置—设置3—快速隐藏快捷键【帮助那些在工作单位炒股的客户隐藏界面】 20、工具—系统设置—标签【帮助客户选择出最适合的报价页面下的标签栏目】 21、工具—系统设置—快捷【帮助客户设置键盘精灵里面的快捷键、类似手机的快捷拨号】 22、工具—系统设置—首页—不显示首页【能够帮助客户直接登录到行情界面】 23、工具—系统设置—设置4—行情信息区—勾选提示买卖盘的委托量变动【在给客户装软件时可直接帮客户勾选上,能够让客户感觉很特别。】 24、工具—系统设置—设置4—行情信息区—买卖盘用柱图显示【方便客户通过图形感觉买卖盘力量】 25、工具—系统设置—设置4—行情信息区—行情等信息放左边【适合喜欢这种方式的客户】 26、工具—系统设置—设置4—提示分析图中的最新缺口【建议客户勾选】 27、工具—系统设置—设置4—分时图上部显示涨跌停价和所属行业【建议客户勾选】 28、工具—系统设置—外观—配色方案—选择(尊贵)【在报价页面内会出现分隔线,能够更加清晰、这个界面也是只有中信建投的通达信软件登陆后默认的界面。】 29、帮助—帮助说明书【有兴趣多学习的客户使用】 30、帮助—每日一帖【简洁易懂的语言让投资者树立正确的理财观念】 31、帮助—关于本系统【了解客户的华彩人生一点通版本是否为最新版型号】 32、分时图—分时重播【可以重现盘中交易时的动态效果。它将从开盘到当前盘中时间的分

实验四 ramdisk 根文件系统的制作

实验四ramdisk根文件系统的制作 一.实验目的 1.熟悉根文件系统组织结构; 2.定制、编译ramdisk根文件系统。 二.实验设备 1.硬件:EduKit-IV 嵌入式教学实验平台、Mini2410 核心子板、PC 机; 2.软件:Windows 2000/NT/XP、Ubuntu 8.04、其他嵌入式软件包。 三.实验内容 利用6.3 中的已经完成的文件系统,生成一个根文件系统镜像。 四.实验原理 ramdisk是内核初始化的时候用到的一个临时文件系统,是一个最小的linuxrootfs系统,它包含了除内核以外的所有linux系统在引导和管理时需要的工具,做为启动引导驱动,包含如下目录: bin,dev,etc,home,lib,mnt,proc,sbin,usr,var。还需要有一些基本的工具:sh,ls,cp,mv……(位于/bin 目录中);必要的配置文件:inittab,rc,fstab……位于(/etc目录种);必要的设备文件:/dev/tty*,/dev/console,/dev/men……(位于/dev目录中);sh,ls等工具必要的运行库:glibc。1.制作ramdisk根文件系统映像 1)单击菜单应用程序->附件->终端打开终端,设置环境变量: $ source /usr/local/src/EduKit-IV/Mini2410/set_env_linux.sh $ source /usr/crosstool/gcc-3.4.5-glibc-2.3.6/arm-linux/path.sh 2)执行命令切换到ramdisk实验目录下: $cd $SIMPLEDIR/6.4-ramdisk 3)运行脚本文件: $ sudosh ramdisk-install.sh shell 脚本命令说明: #!/bin/bash # # ramdisk-install.sh - Make ramdiskfilesystem. # # Copyright (C) 2002-2007

操作系统实验5文件系统:Linux文件管理

实验5 文件系统:Linux文件管理 1.实验目的 (1)掌握Linux提供的文件系统调用的使用方法; (2)熟悉文件和目录操作的系统调用用户接口; (3)了解操作系统文件系统的工作原理和工作方式。 2.实验内容 (1)利用Linux有关系统调用函数编写一个文件工具filetools,要求具有下列功能:*********** 0. 退出 1. 创建新文件 2. 写文件 3. 读文件 4. 复制文件 5. 修改文件权限 6. 查看文件权限 7. 创建子目录 8. 删除子目录 9. 改变当前目录到指定目录 10. 链接操作 *********** 代码: #include #include #include #include #include #include #include #include void menu(void); void openfile(void); void writefile(void); void readfile(void); void copyfile(void); void chmd(void); void ckqx(void); void cjml(void); void scml(void); void ggml(void); void ylj(void); int main() { int choose; int suliangjin=1;

menu(); scanf("%d",&choose); while(choose!=0) { switch(choose) { case 1:openfile();break; case 2:writefile();break; case 3:readfile();break; case 4:copyfile();break; case 5:chmd();break; case 6:ckqx();break; case 7:cjml();break; case 8:scml();break; case 9:ggml();break; case 10:ylj();break; } menu(); scanf("%d",&choose); } return 0; } void menu(void) { printf("文件系统\n"); printf("1.创建新文件\n"); printf("2.写文件\n"); printf("3.读文件\n"); printf("4.复制文件\n"); printf("5.修改文件权限\n"); printf("6.查看文件权限\n"); printf("7.创建子目录\n"); printf("8.删除子目录\n"); printf("9.改变目前目录到指定目录\n"); printf("10.链接操作\n"); printf("0.退出\n"); printf("请输入您的选择...\n"); } void openfile(void) { int fd; if((fd=open("/tmp/hello.c",O_CREAT|O_TRUNC|O_RDWR,0666))<0) perror("open");

通达信函数大全使用说明书

软件简介: 通达信全部函数及其用法(2011年最新版) (一)行情函数 1)HIGH(H)最高价返回该周期最高价.2)LOW(L)最低价返回该周期最低价.3)CLOSE(C)收盘价返回该周期收盘价.4)VOL(V)成交量(手)返回该周期成交量.5)OPEN(O)开盘价返回该周期开盘价.6)ADVANCE 上涨家数返回该周期上涨家数. (本函数仅对大盘有效)7)DECLINE 下跌家数返回该周期下跌家数. (本函数仅对大盘有效)8)AMOUNT 成交额(元)返回该周期成交额.9)VOLINSTK 持仓量返回期货该周期持仓量.10)QHJSJ 期货结算价返回期货该周期结算价. 11)BUYVOL 外盘(手)返回外盘,即时行情数据 12)SELVOL 外盘(手)返回外盘 13)ISBUYORDER 主动性买单返回当前成交是否为主动性买单.用法: ISBUYORDER,当本笔成交为主动性买盘时,返回1,否则为0 14)DHIGH 不定周期最高价返回该不定周期最高价.15)DOPEN 不定周期开盘价返回该不定周期开盘价.16) DLOW 不定周期最低价返回该不定周期最低价.17)DCLOSE 不定周期收盘价返回该不定周期收盘价.18) DVOL 不定周期成交量价返回该不定周期成交量价.19)NAMELIKE 模糊股票名称返回股票名称是否以参数开头. 用法: if(NAMELIKE('ST'),x,y);

20)CODELIKE 模糊股票代码返回股票代码是否以参数开头. 用法: if(CODELIKE('600'),x,y); 21)INBLOCK 属于某板块返回股票是否属于某板块. 用法: if(INBLOCK('沪深300'),x,y); (二)时间函数 1)PERIOD 周期取得周期类型. 结果从0到11,依次分别是1/5/15/30/60分钟,日/周/月,多分钟,多日,季,年. 2)DATE 日期取得该周期从1900以来的的年月日. 用法: DATE 例如函数返回1000101,表示2000年1月1日,DATE+19000000后才是真正的日期值 3)TIME 时间取得该周期的时分秒.用法: TIME 函数返回有效值范围为(000000-235959) 4)YEAR 年份取得该周期的年份.5)MONTH 月份取得该周期的月份.用法: 函数返回有效值范围为(1-12) 6)WEEKDAY 星期取得该周期的星期数.用法: WEEKDAY 函数返回有效值范围为(1-7) 7)DAY 日取得该周期的日期.用法: DAY 函数返回有效值范围为(1-31) 8)HOUR 小时取得该周期的小时数.用法: HOUR 函数返回有效值范围为(0-23),对于日线及更长的分析周期值为0 9)MINUTE 分钟取得该周期的分钟数.用法: MINUTE 函数返回

文件系统实验报告

嵌入式系统实验报告(二) --嵌入式文件系统的构建 138352019陈霖坤一实验目的 了解嵌入式操作系统中文件系统的类型和作用 了解JFFS2文件系统的优点及其在嵌入式系统中的作用 掌握利用Busybox软件制作嵌入式文件系统的方法 掌握嵌入式linux文件系统的挂载过程 二实验内容与要求 编译BusyBox,以BusyBox为基础,构建一个适合的文件系统; 制作ramdisk文件系统映像,用你的文件系统启动到正常工作状态; 研究NFS作为根文件系统的启动过程。 三Busybox介绍 BusyBox最初是由Bruce Perens在1996年为Debian GNU/Linux安装盘编写的,其原始构想是希望在一张软盘上能放入一个开机系统,以作为急救盘和安装盘。后来它变成了嵌入式Linux设备和系统和Linux发布版安装程序的实质标准,因为每个Linux可执行文件需要数Kb的空间,而集成两百多个程序的BusyBox可以节省大量空间。Busybox集成了包括mini-vi编辑器、/sbin/init、文件操作、目录操作、系统配置等应用程序。 Busybox支持多种体系结构,可以选择静态或动态链接,以满足不同需要。 四linux文件系统 文件系统是对一个存储设备上的数据和元数据进行组织的机制,linux文件系统接口设计为分层的体系结构,从而将用户接口层、文件系统实现层和操作存储设备的驱动程序分隔开。 在文件系统方面,linux可以算得上操作系统中的“瑞士军刀”。Linux支持许多种文件系统,从日志型文件系统到集群文件系统和加密文件系统,而且对于使用标准的和比较奇特的文件系统以及开发文件系统来说,linux是极好的平台,这得益于linux内核中的虚拟文件系统(VFS,也称虚拟文件系统交换器)。 文件结构 Windows的文件结构是多个并列的树状结构,不同的磁盘分区各对应一个树。Linux的文件结构是单个的树,最上层是根目录,其它目录都从根目录生成。不同的linux发行版集

实验四 文件系统实验报告

实验四文件系统实验 一 . 目的要求 1、用高级语言编写和调试一个简单的文件系统,模拟文件管理的工作过程。从而对各种文件操作命令的实质内容和执行过程有比较深入的了解。 2、要求设计一个 n个用户的文件系统,每次用户可保存m个文件,用户在一次运行中只能打开一个文件,对文件必须设置保护措施,且至少有Create、delete、open、close、read、write等命令。 二 . 例题: 1、设计一个10个用户的文件系统,每次用户可保存10个文件,一次运行用户可以打开5个文件。 2、程序采用二级文件目录(即设置主目录[MFD])和用户文件目录(UED)。另外,为打开文件设置了运行文件目录(AFD)。 3、为了便于实现,对文件的读写作了简化,在执行读写命令时,只需改读写指针,并不进行实际的读写操作。 4、算法与框图: ①因系统小,文件目录的检索使用了简单的线性搜索。 ②文件保护简单使用了三位保护码:允许读写执行、对应位为 1,对应位为0,则表示不允许读写、执行。 ③程序中使用的主要设计结构如下: 主文件目录和用户文件目录( MFD、UFD) 打开文件目录( AFD)(即运行文件目录)

文件系统算法的流程图如下: 三 . 实验题: 1、增加 2~3个文件操作命令,并加以实现。(如移动读写指针,改变文件属性,更换文件名,改变文件保护级别)。 #include #include #include #include #define MAXSIZE 100 #define ADDSIZE 50 #define PT elem+l-> length #define N 4 typedef struct term{/*班级和学期的结构体*/ char class1[10]; char term1[10]; }term; typedef struct student{/*学生成绩信息的结构体*/ term st;/*班级和学期结构体放于此结构体中*/ char num[10]; char name[12]; float course[4]; float total; float average; int bit; }lnode,*stu; typedef struct{ lnode *elem;/*指向上个结构体的指针*/ int size;/*最大能放lnode结构体成员的个数*/ int length;/*当前长度*/ }sqack,*sq; sqack *l; void init(void)/*动态分配存储空间*/ { l-> elem=(stu)malloc(MAXSIZE*sizeof(lnode)); l-> length =0; l-> size=MAXSIZE; } void input(void)/*输入学生的信息*/ { lnode *newbase,*p; char cla[10],ter[10],ch; int n,i; if(l-> length> =l-> size){ newbase=(stu)realloc(l-> elem,(l-> size +ADDSIZE)*sizeof(lnode));/*追加存储空间*/ l-> elem =newbase; l-> size +=ADDSIZE; } p=l-> elem; do { printf( "输入班级和学期(学期用这种格式,如2005年上学期2005 1,2005年下学期2005 2;先输入班级,回车后再输入学期)\n "); gets(cla); gets(ter); printf( "要输入多少个名单?"); scanf( "%d ",&n); printf( "输入学生的成绩\n学号\t姓名\t科目1\t科目2\t科目3\t科目4\n "); for(i=0;i num ,p-> name,p-> course[0],p-> course[1],p-> course[2],p-> course[3]); strcpy(p-> st.class1,cla); strcpy(p-> st.term1,ter); ++l-> length ; } printf( "要继续吗?(y/n) ");

Linux内核配置编译与文件系统构建要点

Linux内核配置编译与文件系统构建 南京大学 黄开成101180046 2012.11.11 一:实验目的 1.了解嵌入式系统的开发环境,内核与文件系统的下载和启动; 2.了解Linux内核源代码的目录结构及各自目录的相关内容,了解Linux内核各配置选项内容和作用,掌握Linux内核的编译过程; 3.了解嵌入式操作系统中文件系统的类型和应用、了解JFFS2文件系统的优点及其在嵌入式系统中的作用、掌握利用Busybox软件制作嵌入式文件系统的方法,并且掌握嵌入式Linux文件系统的挂载过程。二:实验环境说明 1.PC机使用openSUSE 14 Enterprise 系统。 2.开发板使用深圳市武耀博德信息技术有限公司生产的基于Inter 的PXA270处理器的多功能嵌入式开发平台EELIOD。 3.PC机通过RS-232串口与开发板相连,在PC机终端上运行minicom 程序构造一个开发板上的终端,用于对开发板的控制。 4.PC机与开发板通过ethernet网络相连接,并可在开发板上通过加载网络文件系统(NFS)与PC机通信。 5.Bootloader可以通过tftp协议从PC机上下载内核镜像和根文件系统镜像。下载目录为/tftpboot 。 6.用于开发板的Linux内核源码为linux-2.4.21-51Board_EDR,

busybox版本为busybox-1.00-pre5。 7.交叉编译器的路径为/usr/local/arm-linux/bin/arm-linux。 三:实验操作过程和分析记录 1.嵌入式系统的开发环境和开发流程: 1.1启动minicom和开发板 在PC机上打开一个终端,输入: >minicom 按Ctrl+A-o进入minicom的configuration界面。对串行通信接口进行配置,串口设置为:/dev/ttyS0(串口线接在PC机的串口1上)、bps=115200、8位数据、无校验、无流控制。 然后打开开发板电源,看到屏幕有反应之后,按任意键进入配置界面,如果长时间没有按下任何键,bootloader将会自动从flash中读取内核和根文件系统并启动开发板上的Linux系统。 分析:嵌入式系统中,通常并没有像PC机中BIOS 那样的固件程序,因此整个系统的加载启动任务完全由bootloader来完成。bootloader的主要作用是:初始化硬件设备;建立内存空间的映射图;完成内核的加载,为内核设置启动参数。 按0进入命令行模式,出现51board>,可以设置开发板和PC机的IP 地址: 51board> set myipaddr 192.168.208.133(设置开发板的IP地址) 51board> set destipaddr 192.168.208.33(设置PC机的IP地址)注意IP地址的设置:使其处于同一网段,并且避免和其他系统的

[分享]通达信看盘软件的使用小技巧

[分享]通达信看盘软件的使用小技巧通达信看盘软件的使用小技巧 通达信看盘软件的使用小技巧 一个简单易学的小技巧,不需要会看K线,也不需要会看什么MACD、KDJ、RSI,你只需要看完这篇文章,我相信你就能具备研判一只股票未来趋势的基本能力。 利用“获利比例”指标研判个股走势(由于我一直是使用通达信看股软件,这里就只讲通达信的版本。) 市面上有很多收费软件,里面有很多公式指标,有的是挺好用。但是在免费的通达信软件里就已经有一个很实用的研判个股走势的指标了,那就是显示筹码分布的获利比例指标。获利比例指标显示的是一只股票在所在价位的获利情况,由于它不受未来参数的影响,所以用它来研判个股未来的趋势的可信度十分的高。 那么具体怎么用呢, 大家具体要记住以下的几个阶段 1、获利比例在0%——6%, 2、获利比例在6%——20%, 3、获利比例在20%——50%, 4、获利比例在50%——80%, 5、获利比例在80%——100%, 【1】 当一只股票当天的收盘股价的获利比例在0%——6%时,那么就是一个股票的超跌区。一只股票的获利比例在6%以下的时候,那么就是一个买入点。只要你在这个时候买入,就可以安心持股了。就算它第二天继续下跌,获利比例从5%变成4%

也不用怕,因为它已经是超跌了,你现在要做的只是持股等待反弹。当然了,假如你买到一只股票的获利比例是接近0%时,那就几乎是完美了。那么反弹到什么时候可以出货呢,别急,我们继续讲下去。【2】 当一只股票当天的收盘股价的获利比例在6%——20%时,那么就是一只股票的反弹区。一只股票当下跌到一定程度,获利比例在20%之下时,那么这只股票就会有反弹的动能。这个时候,我们可以做出两种选择:1、少量筹码试盘。轻仓介入,假如这只股票在接下来的一个交易日获利比例上升,那么十有八九这只股票就会向上反弹,尤其是一些备受市场推崇的的题材股票,这个时候我们再正式进攻不迟。 2、继续观望。因为在反弹区间下方还有一个超跌区,一些积弱已久的股票,尤其是大盘股,就算到了反弹区也不会反弹继续下移到超跌区,就算有反弹也不牢靠,往往是一天行情。【3】 当一只股票当天的收盘股价的获利比例在20%——50%时,那么这就是一只股票的弱势区。这是我们做股票必须要避免去碰的。一只股票,无论市场多么看好它,它的前景有多美好,只要你发现它的股价的获利比例一直是在20%——50%徘徊,这样的股票我们绝对不能碰,就算它在期间某一日突然拉个涨停板,而获利比例却没有走出这个区间,也很可能只是一日行情,我们绝对不能参与。此外,当一只股票下跌,使我们被套的时候,到底什么时候应该止损卖出还是持股等待反弹解套呢,这也可以利用获利比例来操作,当它的获利比例从90%之上急速下跌,没有跌出50%这个临界点时,我们都可以持股观望,当跌出了50%的时候,我们就应该果断卖出。【4】 当一只股票当天的收盘股价的获利比例在50%——80%时,那么这就是一只股票的强势区,也可以叫做持股区。一只股票,假如股价上升,获利比例从50%之下上升到50%之上,这个时候我们也可以安心持股,就算中途有调整下跌,只要它一直维持在获利比例50%之上,我们都无需惊慌,这有可能是市场短期获利盘的消化整

根文件系统移植

实验五根文件系统移植 实验目的: 通过本次实验,使大家学会根文件系统移植的具体步骤,并对根文件系统有更近一步的感官认识。让同学理解由于根文件系统是内核启动时挂在的第一个文件系统,那么根文件系统就要包括Linux启动时所必须的目录和关键性的文件,任何包括这些Linux 系统启动所必须的文件都可以成为根文件系统。 实验硬件条件: 1、实验PC机一台,TINY6410开发板一台 2、电源线,串口线,数据线。 实验软件条件: 1、VMware Workstation, 2、Ubuntu10.04 3、mktools-20110720.tar.gz 4、busybox-1.13.3-mini2440.tgz, 5、SecureCRT以及dnw烧写工具 实验步骤: 一、实验步骤 1.进入rootfs目录,查看压缩文件,具体操作指令如下:

2.发现有两个压缩文件夹,分别进行解压: 3.tar xvzf busybox-1.13.3-mini2440.tgz, 4.tar xvzf mktools-20110720.tar.gz,解压完成后, 5.查看文件夹#ls

二、实验步骤 1.修改架构,编译器#cd busybox-1.13.3/ 2.进入后查看#ls 3.#gedit Makefile 4.修改 164行 CROSS_COMPILE ?=arm-linux- 5.修改190行 ARCH ?= arm 6.保存后,退出!

三、实验步骤 1.修改配置 #make menuconfig 2.若出现如下提示

3.需调整到最大化。

4.把Busybox Settings -----→>Build Option ------→> Build BusyBox as astatic binary (no shared libs) 选择上,其他的默认即可。 然后一直退出,保存即可 5.接着执行 make接着执行 make install 6.最终生成的文件在_install 中 #cd _install

操作系统实验---文件系统

实验报告 实验题目:文件系统 姓名: 学号: 课程名称:操作系统 所在学院:信息科学与工程学院 专业班级:计算机 任课教师:

实验项目名称文件系统 一、实验目的与要求: 1、通过一个简单多用户文件系统的设计,加深理解文件系统的内部功能及其内部实现。 2、熟悉文件管理系统的设计方法,加深对所学各种文件操作的了解及其操作方法的特点。 3、通过模拟文件系统的实现,深入理解操作系统中文件系统的理论知识, 加深对教材中的重要算法的理解。 4、通过编程实现这些算法,更好地掌握操作系统的原理及实现方法,提高综合运用各专业课知识的能力。 二、实验设备及软件: 一台PC(Linux系统) 三、实验方法(原理、流程图) 试验方法 (1)首先应当确定文件系统的数据结构:主目录、子目录以及活动文件等。主目录和子 目录都以文件的形式存放于磁盘,这样便于查找和修改。 (2)用户创建文件,可以编号存储于磁盘上。如file0,file1,file2…并以编号作为物理地 址,在目录中登记。 文件系统功能流程图 图1.文件系统总体命令分析

图 2.登录流程图图 3. ialloc流程图 图4.balloc流程图图5.密码修改流程图

图6.初始化磁盘 图 7.显示所有子目录 dir/ls 操作流程图

图8.创建文件 creatfile 、创建目录 mkdir 流程图 图9.改变当前路径 cd 操作流程图

实验原理 1.文件操作 ◆mkdir 创建目录文件模块,输入 mkdir 命令,回车,输入文件名,回车,即会在当前目录文件下创建一个名为刚刚输入的文件名的目录文件。在该创建过程中首先要判断该目录中有没有同名的文件,如果有的话就创建失败,还要判断在该目录下有没有创建文件的权限,有权限才可以创建。具体流程图查看第二节,系统流程图设计部分。 ◆del 删除文件模块,输入 del命令,回车,输入文件名,回车,即会在当前目录文件下删除一个名为刚刚输入的文件名的数据文件。在该删除过程中要判断该目录中是否存在该文件,如果不存在就没有必要执行该操作了,还要判断在该目录下有没有删除文件的权限,有权限才可以删除。具体流程图查看第二节,系统流程图设计部分。 ◆ls 显示当前目录下所有目录的模块,输入 ls 命令,回车 ,即会在屏幕上显示当前目录下的所有目录。在该过程中要判断该目录中是否为空,如果为空就没有必要执行该操作了。执行操作时,要调用 readdir (INode inode )函数 ,先读入文件内容到 content 里面,然后直接输出。如果子目录里面还有子目录,则通过递归,一并输出来。具体流程图查看第二节,系统流程图设计部分。 ◆chmod 改变文件权限模块,输入 chmod 命令,回车,输入文件名,回车,即会根据不同类别的用户在屏幕上提示要改变哪一类用户的权限。如果是文件拥有者执行该操作,他可以选择修改自己、其他用户的权限;如果是文件所属组成员执行该操作,他可以选择修改自己、其他用户的权限;如果是其他用户执行该操作,他只能选择修改自己的权限;在该过程中要判断该目录中是否存在该文件,如果不存在就没有必要执行该操作了。执行操作时,要判断对该文件有没有执行写操作的权利,没有就不能进行。具体流程图查看第二节,系统流程图设计部分。 ◆cd 改变当前所在目录的模块。输入 cd,回车,相应的字符串,回车,则会根据输入字符串的不同跳转到不同的目录下。如果字符串是‘ .’ ,则到当前目录;如果字符串是‘ ..’ ,则到父目录;如果字符串是‘/’ ,则到根目录;如果字符串是当前目录下的子目录,则到该子目录;如果字符串是一个决定路径,则到该绝对路径。当然在执行的时候要判断有没有该子目录或者该绝对路径,如果没有的话,就不能执行。具体流程图查看第二节,系统流程图设计部分。 2. 用户操作 ◆login 用户注销模块,输入 login ,回车,当前用户就退出了,需要重新登录。 ◆pw 用户修改口令模块,输入 pw ,回车,则会提示输入原始密码,输入正确了才可以提示输入新密码,并且要求新密码输入两次,两次一样了才能通过修改密码成功。具体流程图查看第二节,系统流程图设计部分。 ◆logout 用户退出系统模块,输入 logout ,回车,系统自动退出。

相关文档
最新文档