如何在Altera DE1-SOC开发板上运行Linux

如何在Altera DE1-SOC开发板上运行Linux,第1张

软件平台:linux需要的三个重要镜像:u-boot、uimage、filesystem目的:刚买的开发板,在没有任何了解的情况下首先安装一个linux *** 作系统,我们采用光盘资料中提供的三个镜像(软件平台)。我们的目的就是把三个文件烧写到开发板的flash里面,不用管他的存放地址,按照说明手册的方法可以烧入后就可以正常启动了,我已经烧写成功进入 *** 作系统了。

简单介绍:硬件平台是扬创的三星2440套餐5,ARM9内核,光盘提供winCE和linux两个 *** 作系统的移植方法。这里我们已经成功移植了WINCE,比较简单,只要按照手册的方法一步一步进行就可以了,我们要所的linux,这个手册说明不是很详细,经过摸索我们算是移植到了板上,其实只是把光盘提供的三个镜像烧入到了开发板上,可以运行进入 *** 作系统而已,至于 *** 作系统的定制还有一系列 *** 作还要继续研究。下面就说说这个简单的烧入 *** 作,虽然简单,但是也是查了很多资料后迂回完成的,其中走了很多弯路!u-boot,是linux *** 作系统的引导文件,他和vivi是一样是bootloader。源代码不同,如果你用u-boot那你就要烧入与之对应的内核和文件系统,如果用vivi也一样,要烧入和vivi对应的内核以及文件系统。Uimage,这里就是我们所说的内核kernel。Filesystem,文件系统。三个镜像烧入后再上电就可以启动 *** 作系统了。

下面大概分几个方面进行罗列:

Linux要包含

[cpp]

#include <sys/socket.h>

#include <netinet/in.h>

#include <netdb.h>

#include <arpa/inet.h>

等头文件,而windows下则是包含

[cpp]

#include <winsock.h>

Linux中socket为整形,Windows中为一个SOCKET。

Linux中关闭socket为close,Windows中为closesocket。

Linux中有变量socklen_t,Windows中直接为int。

因为linux中的socket与普通的fd一样,所以可以在TCP的socket中,发送与接收数据时,直接使用read和write。而windows只能使用recv和send。

设置socet选项,比如设置socket为非阻塞的。Linux下为

[cpp]

flag = fcntl (fd, F_GETFL)

fcntl (fd, F_SETFL, flag | O_NONBLOCK)

,Windows下为

[cpp]

flag = 1

ioctlsocket (fd, FIONBIO, (unsigned long *) &flag)

当非阻塞socket的TCP连接正在进行时,Linux的错误号为EINPROGRESS,Windows的错误号为WSAEWOULDBLOCK。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7378994.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存