天嵌 ARM开发社区

 找回密码
 注册
查看: 6744|回复: 8

学习韦东山嵌入式linux完全开发手册视频11课4小节的笔记

[复制链接]
huang301 发表于 2012-3-22 12:52:13 | 显示全部楼层 |阅读模式
本帖最后由 huang301 于 2012-3-22 12:54 编辑

                                 整理人:KPBoy  qq1056339680  
韦东山二期驱动视频教程 秒杀价格180元  应该是市面上最好的嵌入式学习视频  报名只要给我淘宝号和名字就可以了 到时自己到他的淘宝店拍下视频的 这里是视频的详细网页介绍   http://www.100ask.net/Linuxvideo.html   留言“KPBoy团购 + 自己的邮箱 " 才有团购价
开发环境:装有红帽企业版6.2wmware虚拟机一台
  交叉工具链是:嵌入式光盘里附送的交叉工具链   arm-linux-gcc-3.4.5-glibc-2.3.6.tar.bz2
Uboot1.1.6
Linux kernellinux-2.6.22.6
Filesystem:使用mdev机制的最小根文件系统fs_mini_mdev
还有一个需要注意的地方:
光盘里的linux-2.6.22.6TQ2440/MINI2440上使用时会导致蜂鸣器响,这是因为JZ2440LCDGPB0作为LCD背光使能引脚, TQ2440/MINI2440GPB0作为蜂鸣器的使能引脚
  使用TQ2440,重新配置内核把自带的LCD驱动去掉即可,方法如下:
在内核目录下执行: make menuconfig
-> Device Drivers
  -> Graphics support
<> S3C2410 LCD framebuffer support  // 输入N
(以上都是使用韦东山老师提供的源码和补丁,现在先熟悉下,等以后自己熟悉了再自己来移植和完善)
S3C2440开发板一台
好了,根据韦东山前面的911课的视频,搭建好上面的uboot和内核之后,我们就开始搭建在产品开发过程中经常使用到的NFS文件系统了。首先我们来看看Linux文件系统时什么?
问:什么是Linux文件系统?
答: 通常一个完整的Linux系统有数千上万个文件组成,文件中存储了程序,数据和各种信息。层次化的目录结构对于文件进行编目和分组。期中采用了各种方法来永久存储所需的结构和数据。
为支持各种本机文件系统,而同时允许访问其他操作系统的文件,Linux内核在用户进程(或C标准库)和文件系统实现之间引入了一个抽象层。该抽象层称之为虚拟文件系统(Virtual File system),简称VFS
VFS的任务并不简单。一方面。它用来提供操作文件,目录及其他对象的统一方法。另一方面都有一些不同之处。但VFS的回报很高,它使得Linux更加灵活了。
内核支持40多种文件系统,其来源各种各样:如用于CD-ROMiso9660,网络文件系统(NFS文件系统)和虚拟的文件系统(proc文件系统)
问:那么linux文件系统有哪些类型呢?
文件系统一般可以分为下面3中。(我们这里是详细学习下网络文件系统)
①基于磁盘的文件系统
②虚拟文件系统(virtual Filesystem),如proc文件系统
③网络文件系统(Network Filesystem):是基于磁盘的文件系统和虚拟文件系统之间的折中。这种文件系统允许访问另一台计算机上的数据,该计算机通过网络连接到本地计算机。在这种情况下,数据实际上是存储在一个不同系统的硬件设备上。这意味着内核无需关注文件的存取,数据的组织和硬件通信的细节,这些有远程计算机的内核处理。对这类文件系统中的文件操作都是通过网络连接进行。在进程向文件写入数据时,数据使用特定的协议(由具体的网络文件系统决定)发送到远程计算机。接下来远程计算机负责储存传输的数据并通知发送者数据已经到达。
尽管是这样,但是内核处理网络文件系统时,依然需要文件长度,文件在目录层次中的位置以及文件的其他重要信息。他必须在提供函数,使得用户进程能够执行通常的文件相关操作,如打开,读,删除等。由于VFS抽象层的存在,用户空间的进程不会看到本地系统与网络文件系统之间的区别。
NFS文件系统的详细使用说明可以参考:linux-2.6.6.22code\linux-2.6.22.6\Documentation\nfsroot.txt(以下是这个文档的内容)
  看完上面这个文档之后,我们大概就知道接下来要做的工作了,下面介绍下怎样来实现从NFS起文件系统
1.首先在宿主机(我们的Linux服务器,即虚拟机上的linux系统)上开启nfs服务,首先查看有没有安装nfs-utils的安装包,命令:#rpm -q nfs-utils(我是一开始就已经定制装了NFS服务器的了,如果你没有安装,可以网上百度下怎样在红帽下安装NFS服务器就可以了)
如果没安装nfs-utils的安装包,那么从对应的Linux操作系统版本安装光盘找到nfa-utils的安装版并安装。
1.NFS配置,加入允许被那些计算机访问,访问的目录和访问权限。
#gedit /etc/exports
重启NFS服务(输入上图中的命令)。
NFS服务器一般是用于两台不同的linux主机间的挂载
下面介绍下从开发板从NFS启动的方法(首先S3C2440开发板从NORFLASH启动,进入到uboot命令行模式,这里我使用的韦东山老师提供的1.1.6版本的uboot
然后设置下NFS服务器的目录,(也就是将下面的这一大串的字符复制,然后pastesecuret中去就可以了,有时可能是格式出错,这个没关系的,你改改这些字母的顺序就可以),至于为什么要这样设置呢,那就要看上面的nfsroot.txt文档了,还有就是先看看韦东山的第11课的第4节有详细介绍的(先看视频,再看上面的那个英文本档)
setenv bootargs noinitrdroor=/dev/nfs nfsroot=/home/mycode/KPBoy/nfs_root/fs_mini_mdev  ip=192.168.1.6:192.168.1.230:192.168.1.1:255.255.255.0::eth0:off init=linuxrc console=ttySAC0
输入在命令行里saveenv,将设置保存nandflash中去

然后输入boot启动系统,

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
TQ_guoxixiao 发表于 2012-3-22 14:08:58 | 显示全部楼层
谢 谢 分 享
 楼主| huang301 发表于 2012-4-3 15:07:54 | 显示全部楼层
过来看看 :D:D:D
小草吖 发表于 2012-4-6 12:11:59 | 显示全部楼层
学习。。。。
安仔 发表于 2012-4-11 23:41:32 | 显示全部楼层
不错嘛:lol
zhongfushun 发表于 2012-4-13 19:52:38 | 显示全部楼层
正在看第一期
honghaoyang 发表于 2012-4-14 11:49:42 | 显示全部楼层
:)顶!!!
flysnow5240 发表于 2012-5-17 21:13:25 | 显示全部楼层
谢谢楼主!!!
huxh5837 发表于 2012-9-17 16:53:53 | 显示全部楼层
过来看看:):):)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号 )

GMT+8, 2024-4-29 21:29 , Processed in 1.046875 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表