Hi3518内核和文件系统烧写以及nfs挂载
NFS配置详细介绍

4、增加了对TCP传输协议的支持 、增加了对TCP传输协议的支持 V2只提供了对UDP协议的支持,在一些高要求的网 V2只提供了对UDP协议的支持, 络环境中有很大限制,V3增加了对TCP协议的支持 络环境中有很大限制,V3增加了对TCP协议的支持 *5、异步写入特性 6、改进了SERVER的mount性能 、改进了SERVER的mount性能 7、有更好的I/O WRITES 性能. 、有更好的I/O 性能. 9、更强网络运行效能,使得网络运作更为有效. 、更强网络运行效能,使得网络运作更为有效. 10、更强的灾难恢复功能. 10、更强的灾难恢复功能.
服务器端配置(2/5) 服务器端配置(2/5)
配置NFS 配置NFS
配置文件/etc/exports 配置文件/etc/exports 配置格式<输出目录> [客户端1 配置格式<输出目录> [客户端1 选项(访问权 限,用户映射,其他)] [客户端2 限,用户映射,其他)] [客户端2 选项(访问权 限,用户映射,其他)] 限,用户映射,其他)] 例: /home/xxx 192.168.1.1(rw) 允许192.168.1.1的用户mount /home/xxx目录 允许192.168.1.1的用户mount /home/xxx目录
客户端配置
Mount –t nfs 服务器ip:目标目录 mount到的目录 服务器ip:目标目录 mount到的目录 例:mount -t nfs 192.168.1.102:/home /mnt
实际应用
1.多个机器共享一台CDROM或者其他设备。这对 1.多个机器共享一台CDROM或者其他设备。这对 于在多台机器中安装软件来说更加便宜跟方便。 2.在大型网络中,配置一台中心 NFS 服务器 2.在大型网络中,配置一台中心 用来放置所有用户的home目录可能会带来便利。 用来放置所有用户的home目录可能会带来便利。 这些目录能被输出到网络以便用户不管在哪台工 作站上登录,总能得到相同的home目录。 作站上登录,总能得到相同的home目录。 3.几台机器可以有通用的/usr/ports/distfiles 目 3.几台机器可以有通用的/usr/ports/distfiles 录。这样的话,当您需要在几台机器上安装port时, 录。这样的话,当您需要在几台机器上安装port时, 您可以无需在每台设备上下载而快速访问源码。
ortp移植到hi3518eh.264封包rtp发送

ortp移植到hi3518eh.264封包rtp发送看到ORTP是纯C实现的rtp库,于是移植到3518e试用一下.1.下载源码链接地址里面有个tar res跳转链接跳转入链接地址下载最新的ortp-0.23.0.tar.gz,并解压2.编译./configure --prefix=/work/hi3518/ortp--host=arm-hisiv100nptl-linuxmakemake install配置只需指定安装目录prefix,编译平台host即可,这里host 直接赋值arm-hisiv100nptl-linux-gcc前缀即可,注意不是arm-hisiv100nptl-linux-而是arm-hisiv100nptl-linux。
3.部署到开发板将编译生成的库/work/hi3518/ortp/lib/libortp.so.9复制到开发板/usr/lib中4.添加ortp库到mpp2中在海思SDK mpp2目录下新建rtp目录,将/work/hi3518/ortp/下全部内容复制到该目录下,修改mpp2/sample/Makefile.param,添加:INC_FLAGS += -I$(MPP_PATH)/rtp/include-L$(MPP_PATH)/rtp/lib/ -lortp5.修改代码示例程序venc中有将视频进行264编码并保存为文件(nfs挂载),这里一步步分析sample_venc.c即可找到最终的保存是通过sample_comm_venc.c中的SAMPLE_COMM_VENC_SaveH264函数完成的,这里只要修改该函数为封包发送即可。
下面是sample_comm_venc.c中需要添加的部分:#include <ortp/ortp.h>#include <signal.h>#include <stdlib.h>#include <sys/types.h>#include <sys/time.h>#include <stdio.h>#define Y_PLOAD_TYPE 96 //H.264#define MAX_RTP_PKT_LENGTH 1400#define DefaultTimestampIncrement 3600 //(90000/25)uint32_t g_userts=0;RtpSession *pRtpSession = NULL;/** 初始化** 主要用于对ortp以及其它参数进行初始化* @param: char * ipStr 目的端IP地址描述串* @param: iint port 目的端RTP监听端口* @return: RtpSession * 返回指向RtpSession对象的指针,如果为NULL,则初始化失败* @note:*/RtpSession * rtpInit( char * ipStr, int port){RtpSession *session;char *ssrc;printf("********oRTP for H.264 Init********\n");ortp_init();ortp_scheduler_init();ortp_set_log_level_mask(ORTP_MESSAGE|ORTP_WARNIN G|ORTP_ERROR);session=rtp_session_new(RTP_SESSION_SENDONLY);rtp_session_set_scheduling_mode(session,1);rtp_session_set_blocking_mode(session,0);//rtp_session_set_connected_mode(session,TRUE);rtp_session_set_remote_addr(session,ipStr,port);rtp_session_set_payload_type(session,Y_PLOAD_TYPE);ssrc=getenv("SSRC");if (ssrc!=NULL) {printf("using SSRC=%i.\n",atoi(ssrc));// 设置输出流的SSRC。
nfs配置+开发板挂载

网络文件系统nfs文件系统使用一、NFS简介1、NFS就是Network FileSystem的缩写,它的最大功能就是可以通过网络让不同的机器,不同的操作系统彼此共享文件(sharefiles)——可以通过NFS挂载远程主机的目录,访问该目录就像访问本地目录一样,所以也可以简单的将它看作一个文件服务器(FileServer)。
注意:一般而言,使用NFS服务能够方便地使各unix-like系统之间实现共享,但如果需要在unix-like和windows系统之间共享,那就得使用samba了。
2、NFS是通过网络进行数据传输,那么NFS使用哪些端口呢,答案是……不知道,因为NFS 传输数据时使用的端口是随机的,唯一的限制就是小于1024,客户端怎么知道服务器使用的是哪个端口,此时就要用到远程过程调用RPC。
其实,NFS运行在SUN的RPC(Remote Procedure Call,远程过程调用)基础上,RPC定义了一种与系统无关的方法来实现进程间通信,由此,NFS Server也可以看作是RPC Server。
正因为NFS是一个RPC服务程序,所以在使用它之前,先要映射好端口——通过portmap设定。
比如:某个NFSClient发起NFS服务请求时,它需要先得到一个端口(port),所以它先通过portmap得到portnumber(不仅是NFS,所有的RPC服务程序启动之前,都需要先设定好portmap)。
注意:在启动RPC服务(比如NFS)之前,需要先启动portmap服务。
3、NFS允许系统将其目录和文件共享给网络上的其他系统。
通过NFS,用户和应用程序可以访问远程系统上的文件,就像它们是本地文件一样。
那么NFS最值得注意的优点有:(1)本地工作站可以使用更少的磁盘空间,因为常用数据可以被保存在一台机器上,并让网络上的其他机器可以访问它。
(2)不需要为用户在每台网络机器上放一个用户目录,因为用户目录可以在NFS服务器上设置并使其在整个网络上可用。
ARM开发板如何挂载NFS开发环境的方法步骤

ARM开发板如何挂载NFS开发环境的方法步骤(mini2440无盘启动)来源: ChinaUnix博客日期:2010.01.03 16:12(共有条评论) 我要评论这个部分还是比较不好弄的。
想象要是不能通过nfs挂载网盘的话,他提出这个方法也就没什么用了。
这样看的话,是比较完美了。
在你实验之前你可以现挂载一下(用busybox生成文件系统后不用编译就可以了)确认没问题在编译下载镜像文件。
还有在作qt文件应用程序的时候很大用这种方法,相信不用考虑编译和裁减的情况下就可以直接运行了。
首先介绍一下我的开发环境:PC环境是ubuntu9。
04,开发板为友善之臂的MINI2440主机IP:192.168.50.72 网关:192.168.50.1 子网掩码:255.255.255.0开发板IP:192.168.50.168 网关:192.168.50.1 子网掩码:255.255.255.0为了能和主机建立起连接我必须得把开发板IP改成和主机一个网段的 .这里首先要说明的是ubuntu的静态IP设置问题:默认安装完成后,右上角的网络配置上wired ..和eth0为灰色。
不能点选。
然后禁用networdmanager启动network以太网设置静态IP的时候,不管怎么设置,子网掩码都和网关一样,比如说:地址:192.168.0.22子网掩码: 192.168.0.1 //不管怎么输入255.255.255.0 ,都不行!网关:192.168.0.1 //这里改了255.255.255.0的话,上面就也成255.255.255.0了。
(auto ethernet是可以联上网的)。
所以就上GG找答案,找解决方法。
进入FC10,执行终端命令(也可以用VI修改)$ su -c ‗gedit /etc/sysconfig/networking/devices/ifcfg-eth0′直接修改文件中的子网掩码信息就可以代码为:# Broadcom Corporation NetXtreme BCM5752 Gigabit Ethernet PCI ExpressDEVICE=eth0HWADDR=00:16:e6:db:c2:96ONBOOT=yesBOOTPROTO=static //这个应该是―static‖,而不是―dhcp‖或―none‖;USERCTL=yesPEERDNS=yesIPV6INIT=noNM_CONTROLLED=yes//这个应该是―yes‖,如不修改,链接仍是disconnected;TYPE=EthernetNETMASK=255.255.255.0IPADDR=192.168.50.72GATEWAY=192.168.50.1然后重新激活下网卡就可以了.#service network restart设置完成后,右上角的网络配置上System eth0与auto ethernet就可以点选了. 需要说明的是因为我之前没有设置静态IP之前通过NFS 启动系统启动不了.连接主机和开发板我选择了串口线和网线连接起了主机和开发板连接好电源,串口线,网线,打开串口终端配置minicom(在FC10终端输入命令minicom -s)进入到minicom配置界面后选择:Serial port setup然后按照下面的设置下就OK了A – Serial Device : :/dev/ttyS0B – Lockfile Location : /var/lockC – Callin Program :D – Callout Program :E – Bps/Par/Bits : 115200 8N1F – Hardware Flow Control : NoG – Software Flow Control : No建立和配置NFS 服务(1)设置共享目录运行命令#gedit /etc/exports编辑nfs 服务的配置文件(注意:第一次打开时该文件是空的),添加以下内容:/opt/FriendlyARM/mini2440/root_qtopia *(rw,sync,no_root_squash)其中:/opt/FriendlyARM/mini2440/root_qtopia 表示nfs 共享目录,它可以作为开发板的根文件系统通过nfs 挂接; * 表示所有的客户机都可以挂接此目录rw 表示挂接此目录的客户机对该目录有读写的权力no_root_squash 表示允许挂接此目录的客户机享有该主机的root 身份(2)通过命令启动和停止nfs 服务在命令行下运行:#/etc/init.d/nfs restart这将启动nfs 服务,可以输入以下命令检验nfs 该服务是否启动。
Linux学习之挂载网络文件系统

NFS(Network File System),即网络文件系统,能使使用者访问网络上别处的文件就像在使用自己的计算机一样。
其工作原理是使用客户端/服务器架构:服务器程序向其他计算机提供对文件系统的访问,其过程称为输出。
NFS客户端程序对共享文件系统进行访问时,把它们从NFS服务器中“输送”出来。
文件通常以块为单位进行传输。
在我们嵌入式Linux中,NFS的主要应用如:把主机的上文件(比如目标板的可执行文件)共享给目标板,这样目标板就很方便地运行程序。
本篇笔记要演示的实验框图如下:开发板挂载NFS1、配置NFS共享目录可被访问需要修改主机中的/etc/exports ,把下面这一句加到exports文件里:/home/book/nfs_share*(rw,nohide,insecure,no_subtree_check,async,no_root_squash)有两部分内容,两部分内容由空格隔开。
第一部分内容/home/book/nfs_share是我们要共享的开发主机目录。
第二部分内容是一些配置参数:*:这是个通配符,在这里代表谁都可以访问该目录。
也可以指定哪一个客户端可以访问。
比如我们的开发板IP为192.168.1.111:我们把*号改为我们的开发板IP,则可以制定这个共享目录仅供我们这块开发板可以访问。
其它参数说明:保存完文件后,输入如下命令更新exports配置:sudo exportfs -arv然后把一个编译好的hello可执行文件放入到该共享目录中:2、开发板挂载共享目录在开发板串口终端输入命令:mount -t nfs -o nolock,vers=4 192.168.1.104:/home/book/nfs_share /mnt •vers=4表示使用 NFS 文件系统第 4 版本。
•192.168.1.104为Ubuntu主机IP。
•/home/book/nfs_share为共享目录。
鸿蒙操作系统智能设备开发相关

鸿蒙操作系统智能设备开发相关鸿蒙操作系统智能设备开发的范畴包括内核开发、驱动开发、子系统开发、组件开发、移植、设备开发与各项API参考等。
当然,笔者认为随着鸿蒙操作系统的不断发展,开发的内容也会更加细致化与丰富化,比如移植这个部分就是随着实践与发展的需要,而加入官方开发指导相关内容中的。
鸿蒙操作系统智能设备开发中各项功能的实现,需要综合考虑需要实现功能的基本概念、使用场景、开发过程、步骤、注意事项与约束条件等。
鸿蒙操作系统为各种智能设备开发提供了非常丰富的、强大的功能支持体系,将PC互联网、移动互联网各种智能设备,基于未来的物联网、人工智能等各项可能使用到的基础功能,进行封装和作为基础能力提供,让设备合作伙伴、开发者可以聚焦于用户、产品需求、创意与具体业务逻辑等。
本部分内容会把到本书截稿时间为止的、鸿蒙官方提供的主要相关功能场景进行阐述,以便于同设备相关的合作伙伴、决策者、产品经理、设计人员、代码开发工程师及普通的读者,知道哪些具体的想法、市场需求是现在可以通过鸿蒙操作系统的功能就可以实现的,哪些是需要组合、创新才能完成的,哪些是需要和鸿蒙官方进行单独沟通才有可能完成的。
当然,鸿蒙操作系统在不断发展,提供的各项功能与接口会越来越丰富,笔者的创作只是起到抛砖引玉的作用。
所以,本节中具体涉及代码的部分,比如开发接口、开发步骤与生命周期等,就没有阐述。
1. 内核开发内核系统最核心的部分,其开发范畴包括了基于鸿蒙操作系统的轻内核基础功能、轻内核文件系统、标准库和调测四部分。
(1)轻内核基础功能轻内核基础功能包括进程、线程、内存、网络四部分。
首先,我们来阐述进程、线程开发相关的事项。
进程、线程的逻辑表现用通俗的例子来说明,就跟我们使用App一样,打开一个App 就类似一个进程、线程的概念;当我们打开多个App时,就是多个进程、线程启动,优先的进程、线程是我们正在使用的或者最后一个打开的;当然,这个举例只是为了便于读者理解,进程、线程并不等于笔者表述的App或者App功能界面。
九,Linux-3.19内核支持挂载NFS文件系统

九,Linux-3.19内核⽀持挂载NFS⽂件系统⽂档时间:2018-08-25交叉编译器:arm-linux-gcc-4.3.2Ubuntu版本:16.04kernel版本:linux-3.19⼀,在 Ubuntu 上安装配置 NFS1),安装 NFS输⼊命令sudo apt-get install nfs-kernel-server安装 nfs-kernel-server:输⼊命令sudo apt-get install nfs-common安装 nfs-common 这是挂载 nfs⽬录所需要的:2),建⽴共享⼯作⽬录输⼊命令:/home/aaron/workmkdir nfs_root //建⽴⼯作⽬录chmod 777 nfs_root //修改nfs_root权限把制作好的根⽂件系统 fs_new拷贝到 nfs_root ⽬录下3),配置 NFS打开 /etc/exports,添加如下内容:/home/aaron/work/nfs_root *(rw,sync,no_root_squash,no_subtree_check)*:允许所有的⽹段访问rw:挂接此⽬录的客户端对该⽬录具有读写权限sync:资料同步no_root_squash:root ⽤户对⽂件⽬录具有完全访问权限no_subtree_check:不检查⽗⽬录的权限配置完成后,重启 NFS 服务:sudo /etc/init.d/nfs-kernel-server restart查看是否启动成功:showmount -e如上图所⽰表⽰重启成功4),验证在 uboot 终端输⼊命令 nfs 32000000 192.168.2.110:/home/aaron/work/kernel/linux-3.19/arch/arm/boot/uImage 下载 uImage下载成功也可以通过在服务端挂载根⽂件系统来验证:sudo mount -t nfs 192.168.2.110:/home/aaron/work/nfsroot/fs_new /mnt/在服务端/mnt/⽬录下可以查看挂载到的⽂件系统2,⽬标板通过 NFS 挂接根⽂件系统1),⽬标板⽂件系统启动之后去挂载命令如下:mount -t nfs -o nolock 192.168.2.110:/home/aaron/work/nfsroot/fs_new /mnt2),修改 bootargs 直接从 nfs 启动这种做法就是在u-boot启动之后,设置nfs挂载参数。
基于ARM6410-Ubuntu的NFS挂载方法及驱动模块加载方法

NFS服务器的配置一、NFS服务器端的配置,即共享发布者(一)需启动的服务和需安装的软件1、NFS服务器必须启动两个daemons服务:rpc.nfsd和rpc.mountdrpc.nfsd:用来管理客户端PC是否可以登录。
类似于windows中的共享权限。
rpc.mountd:用来管理客户端pc能够使用的文件安全权限。
如windows中的共享安全权限。
RPC:因为NFS支持的功能很多,所以NFS的功能对应的端口才无法固定,而是采用小于1024的随机端口。
但客户端需要得知服务器的端口才能联机,此时就需要启用RPC服务。
RPC的功能就是指定每个NFS功能的端口号。
并传信息给客户端,让客户端可以连到正确的端口上。
服务器在启动NFS时会随机取用数个端口,并主动向RPC注册,因此RPC知道每个NFS 功能对应的端口。
RPC用111端口监听客户端的请求,并应答正确的端口。
启动NFS前,RPC就要先启动了,否则NFS会无法向RPC注册。
2、NFS 服务器需要安装nfs主程序,nfs-utils和rpc主程序portmap(二)exports服务器的方法:1、NFS文件存取权限因为NFS没有验证机制,当客户端用户访问NFS服务器的共享文件夹时会遇到的权限情况:(1)NFS服务器端用户列表中有与客户端用户名相同的用户名时,客户端可以直接存取共享文件夹。
例:客户端用户为khp,而nfs服务器用户列表(/etc/passwd)中也有khp这个用户名,则将拥有KHP权限。
(2)当访问NFS服务器的客户端用户UID与服务器端UID相同,但用户名却不相同时,客户端将拥有与服务器端UID 相同但不同用户的权限。
例:客户端为501UID,用户名为khp的帐号访问NFS服务器。
NFS服务器用户列表中(/etc/passwd)有uid为501 ,但用户名为pla的用户,所以客户端khp用户可以拥有NFS 服务器pla相同权限。
(3)如果客户端用户UID在NFS服务器端用户列表中不存在时,则以匿名用户的权限访问。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Hi3518内核和文件系统烧写以及NFS挂载修改履历第一步编译内核和文件系统文档说明:涉及到目录的请根据自己的实际情况进行更改,本文档仅根据笔者的测试进行举例说明。
1 安装交叉编译器cd arm-hisiv100nptl-linux./cross.install说明:3518e推荐使用100nptl进行编译,arm-hisiv100nptl-linux-(使用uclibc库,uclibc 工具链支持全规格版本和小型化版本)arm-hisiv200-linux-(glibc 库glibc 工具链只支持全规格版本),实验时没有使用hisiv200,不确定会出什么问题,不推荐使用。
2 编译步骤cd ./linux-3.0.y./mk3518.shmk3518.sh 脚本里面包含了编译linux内核所需的所有的命令,具体看mk3518.sh文件,编译成功将生成在目录arch/arm/boot/uImage文件,这个就是要烧录到板子上的注意:大小大约为1M。
大于1M也许会出问题,在实验前期都是大于1M,烧录的时候出问题。
制作rootfs文件系统,使用的是最新的squashfs只读文件系统,使用的工具为mksquashfs,目录squashfs4.2为这个工具的代码rm ./rootfs.squashfs //仅仅为了删除之前存在的文件系统,如果没有,可不执行这一步。
./mksquashfs ./rootfsrootfs.squashfs -b 256Kcp ./rootfs.squashfs ./tftpboot //可不用命令,自己拷贝,黏贴,文件夹根据自己实际情况所定。
生成的rootfs.squashfs这个就是要烧录到板子上的文件注意:生成的文件大约为1.5M地址空间说明| 256K | 1M | 1.5M ||------------|---------------|-----------------------|| boot | kernel | rootfs |剩下5.25M可以由用户自由使用。
可以看出如果文件超出限制,将会出现内存不够的错误。
烧写前期遇到几次提示内存不足的错误。
第二步烧写内核和文件系统1 烧写工具安装和配置win7下使用tftod32和secureCRT 进行烧写。
a、安装usb转串口的驱动在~/usb驱动/WIN7驱动2/Prolific_DriverInstaller_v110.exe目录下安装后到设备管理器中查看是否安装成功。
注:有时系统会自己安装,安装以后只要secureCRT设置正确,仍可以正常使用,如果不能正常使用,请尝试卸载系统自动安装的,使用hisi提供的驱动。
b、安装tftpd32软件,在百度上面随便搜索一个下载,安装后,打开tftpd32软件。
其中当前目录指的是安装tftpd32的安装目录,点击显示目录可以看到该目录下的内容。
后面要烧录的镜像文件都是放在这个目录下的,在u-boot控制命令台加载镜像文件的时候,自动从该目录下搜索指定的镜像文件。
服务器IP地址指的是当前PC机的IP地址,当打开tftpd32软件的时候,会自动把你当前PC上的IP地址加载到此处。
如果你想修改服务器的IP地址,直接把你的PC的IP地址修改后,打开tftpd32软件,会自动加载的。
注:烧录基本不用远程服务器,如果有兴趣可以研究使用远程服务器烧录,不推荐使用远程服务器。
c、安装SecureCTR软件,具体步骤请百度。
首先打开SecureCTR软件,选择快速链接,会弹出一个选项框。
在Protocla 下拉菜单中选择 serial ;Port的选择依据安装驱动时分配的com端口;波特率选择115200点击ok当窗口出现绿色勾时表明链接成功。
d、重新启动开发板,按住ctrl+c进入u-boot的控制台,再根据烧录步骤,输入命令烧kernel和文件系统。
但是一定要把相关镜像文件拷贝到tftpd32的安装目录下,不然找不到。
注。
切记uImage和 rootfs一定要拷贝到tftpd32的根目录下。
2 烧写过程注:千万不要忘记把tftpd32打开并进行设置uboot烧写内核set serverip 192.168.16.100mw.b 0x82000000 0xFF 0x100000tftp 0x82000000 uImagesf probe 0sf erase 0x40000 0x100000sf write 0x82000000 0x40000 0x100000烧写rootfs文件系统mw.b 0x82000000 0xFF 0x180000tftp 0x82000000 rootfs.squashfssf probe 0sf erase 0x140000 0x180000sf write 0x82000000 0x140000 0x180000设置启动参数和启动命令setenvbootargs 'mem=32M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=squashfsmtdparts=hi_sfc:256K(boot),1M(kernel),1536K(rootfs),5 376K(user)'setenvbootcmd 'sf probe 0;sf read 0x82000000 0x40000 0x100000;bootm0x82000000'saveenvreset注意有个ko没有加载成功,没有加载成功的原因未知,但是可以手动加载。
加载办法为挂载完文件系统以后用insmod 加文件的绝对路径。
第三步挂载nfs工具telnet1 telnet启动办法在命令提示符下输入telnet 192.168.16.105 ip为板子的ip出现如下错误可以在securtCRT里面输入telnetd打开板子的telnet端口。
2 telnet的使用a: 现修改板子的ip地址,确保pc,ubuntu,板子在同一个网段,板子ip地址修改可以在secureCRT中修改,修改使用命令ifconfig eth0 192.168.16.105 //配置板子的IP地址ifconfig //查看网络状态ping 192.168.16.100 //查看是否与PC机连通网络连通的情况下,才能正确挂载nfs系统:ubuntu下修改ubuntu的ip地址同样使用ifconfig eth0进行修改。
修改以后用ping检查三者是否相互ping通,如果不能ping通,自行检查。
b:在命令提示符下输入telnet 192.168.16.105 //ip地址为板子的ipC:\Users\Administrator>telnet 192.168.16.105正在连接192.168.16.105...无法打开到主机的连接。
在端口 23: 连接失败如果出现这个错误,为板子的telnet端口没有开启所至,在secureCRT中输入telnetd,打开板子的telnet端口。
连接以后需要输入板子的帐号密码。
我们使用的hi3518e使用的帐号为root,密码为空。
但是在淘宝或者公司卖的,uboot的密码一般是不告诉买家,为了防止查看他们的文件系统。
如果自己买开发板练习,切记telnet连接以后不能加密。
c:使用mount -t nfs -o nolock 192.168.16.102:/zhang/hi3518/nfs /mnt命令在telnet下进行挂载,ip地址为ubuntu的ip地址,因为我们把ubuntu下nfs文件夹挂载到板子上,以后调试程序,可直接修改nfs文件夹下的文件,如同直接修改板子上的文件一样,但是这仅仅是挂载,并不修改板子的文件。
第四步: sample_venc 例子程序测试1: mpp包编译cd mpp/samplemake//mpp/sample/venc 就是海思提供的同时编码的程序代码//说明海思3518E受限硬件资源,最大只能编码1个码流、最大25帧(一个720P) 可以直接在ubuntu下编译,将编译好的mpp文件夹拷贝到nfs目录下,这就是nfs的好处,只需挂载一次,需要添加删除文件可直接在nfs目录下操作,如同在板子上添加删除文件一样。
2:加载驱动,生成H264码流文件。
cd /ko./load3518e //海思底层视频编码驱动加载cd /mnt./sample_venc 0 //海思提供的同时编码1个码流的例子,会在当前目录下写H264裸码流文件,播放裸码流请用VLC播放当前目录生成的H264文件(stream_chn0.h264)// VLC软件下载地址:/vlc/2.1.3/win32/vlc-2.1.3-win32.exe挂载nfs也可以直接使用securtCRT进行挂载,挂载步骤1 烧写完文件系统和内核以后,用ifconfig eth0 进行设置板子的ip地址2 设置以后用ping检查能否ping通板子3 ping通以后使用mount命令进行挂载4 用 cd /mnt 转到挂载目录下用ls查看当年文件夹下的内容。
如果内容和被挂载的文件一样,则挂载成功。
在ubuntu下可以使用minicom进行挂载。
(1)有些linux系统自带了minicom,直接用命令安装就行了:apt-get install minicom;也可以从以下地址下载安装:/projects/minicom/(2)安装完成后:用指令"rpm -qa | grepminicom"来确认是否安装了minicom,回车后会显示minicom的版本信息.第一次启动时:即输入minicom提示错误。
则需:minicom -s启动出现配置菜单:选serial port setup进入串口配置输入A配置串口驱动为/dev/ttyS0(如果使用USB转接口,Serial Device 要配置为/dev/ttyUSB0)输入E配置速率为115200 8N1输入F将 Hardware Flow Control 设为 NO回车退出由于我们使用minicom作为超级终端控制路由器等设备, 而不是控制modem, 所以需要修改Modem and dialing, 将Init string, Reset string, Hang-up string设置为空. 设置完成后选择Save setup as dfl 将当前设置保存为默认设置.(若保存时出错,可能是因为权限不够,用root身份配置minicom则可)在配置菜单选Save setup as df1保存(一定要记得这一步)选Exit退出下次在输入minicon即可直接进入。