完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
尽管Linux 的arch目录下有对ARM处理器支持的代码,但由于Linux是在X86平台上实现的,很多方面都没有考虑到ARM平台的特殊性。将Microwindows移植到运行ARM-Linux操作系统的ARM硬件平台上,需要如下几个步骤。
1)替换fork( )系统调用。由于ARM-Linux不同于标准Linux,所以以标准Linux内核为支持目标开发的Microwindows源代码也必须作出相应的修改才能适应ARM-Linux系统。最主要的问题是ARM-Linux不提供fork()系统调用,而以vfork()调用取代。所以在ARM-Linux代码中fork()的使用需要进行修改。可利用宏定义简便地将所有的fork()调用用vfork()来替代。修改Microwindows的编译设置文件,并采用ARM交叉编译器arm-elf-gcc。 2) 确定传递给显示屏驱动程序的参数。具体地说,就是需要在打开FrameBuffer设备 /dev/fb0时将显示屏的基本参数传递给设备驱动程序。在scr_fb.c中的fb_open(PSD psd)函数中修改如下: psd->xres=psd->xvirtres=320; psd->yres=psd->yvirtres=240; psd->linelen=40; psd->size=320×320; 3) 编译Microwindows。在Red Hat 9.0下建立ARM交叉编译环境,修改Makefile文件,将$(CC)编译参数指定为交叉编译环境安装目录下的arm-elf-gcc,重新编译代码,就可以生成能够在ARM平台下运行的程序。ARM系列处理器的指令系统相互兼容,经arm-elf-gcc编译过的代码可在基于ARM核的各种处理器上运行。 Microwindows中文化 为了使Microwindows实现对简体汉字的支持,需要对引擎层的devfont.c做相应修改。在devfont.c文件中定义了Microwindows关于字体操作的核心数据结构和操作函数。由于Microwindows采用面向对象的设计方法,因而只要重新定义一系列对简体中文的数据结构和操作函数,并向系统注册,就可以完成系统的中文化。需要重新定义的数据结构和函数是: static MWFONTPROCS hzk_procs={ MWTF_ASCII, /*routines expect ASCII */ Hzk_getfontinfo, Hzk_gettextsize, NULL, Hzk_destroyfont, Hzk_drawtext, Null, Null, }; |
|
|
|
786 浏览 0 评论
4210 浏览 0 评论
如何使用python调起UDE STK5.2进行下载自动化下载呢?
2520 浏览 0 评论
开启全新AI时代 智能嵌入式系统快速发展——“第六届国产嵌入式操作系统技术与产业发展论坛”圆满结束
2926 浏览 0 评论
获奖公布!2024 RT-Thread全球巡回线下培训火热来袭!报名提问有奖!
31442 浏览 11 评论
72894 浏览 21 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 00:48 , Processed in 0.517184 second(s), Total 61, Slave 44 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号