文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | 免费看大片 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院程序开发其他语言ARM的嵌入式Linux移植体验之操作系统
精品推荐
特别推荐
·控制面板知多少
·给你十条学习Ruby语言的理由
·分页管理机制
·Perl 语言的重要价值体现
·经验技巧:分享两条Delphi开发经验
·Java编程思想:面向对象的逻辑思维方法
·Samba系统简介
热点TOP10
·程序八卦:胡子决定编程语言运势
·EZ-USB 68013A开发指南
·AIX 5L 学习大纲/简易教程(3)(未经许可,请勿COPY)
·Static和Final修饰类属性变量及初始化
·Servlet和Filter的url匹配url-pattern
·Flex挑战Java和.NET Adobe能否再度崛起?
·Java编程思想:面向对象的逻辑思维方法
·How to cross-compile OpenSSL for ARM
·在Pocket PC上编写游戏之十
·设计Pocket PC短消息服务简介

ARM的嵌入式Linux移植体验之操作系统

日期:2008年5月10日 作者: 查看:[大字体 中字体 小字体]


$(CONFIG_ARCH_MX1ADS) $(CONFIG_ARCH_PXA)
obj-$(CONFIG_MIZI) += event.o
obj-$(CONFIG_APM) += apm2.o
  h.修改arch/arm/kernel/debug-armv.S文件,在适当的位置增加如下关于S3C2410的代码:

#elif defined(CONFIG_ARCH_S3C2410)

.macro addruart,rx
mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled ?
moveq \rx, #0x50000000 @ physical base address
movne \rx, #0xf0000000 @ virtual address
.endm

.macro senduart,rd,rx
str \rd, [\rx, #0x20] @ UTXH
.endm

.macro waituart,rd,rx
.endm

.macro busyuart,rd,rx
1001: ldr \rd, [\rx, #0x10] @ read UTRSTAT
tst \rd, #1 << 2 @ TX_EMPTY ?
beq 1001b
.endm
  i.修改arch/arm/kernel/setup.c文件

  此文件中的setup_arch非常关键,用来完成与体系结构相关的初始化:

void __init setup_arch(char **cmdline_p)
{
struct tag *tags = NULL;
struct machine_desc *mdesc;
char *from = default_command_line;

ROOT_DEV = MKDEV(0, 255);

setup_processor();
mdesc = setup_machine(machine_arch_type);
machine_name = mdesc->name;

if (mdesc->soft_reboot)
reboot_setup("s");

if (mdesc->param_offset)
tags = phys_to_virt(mdesc->param_offset);

/*
* Do the machine-specific fixups before we parse the
* parameters or tags.
*/
if (mdesc->fixup)
mdesc->fixup(mdesc, (struct param_struct *)tags,
&from, &meminfo);

/*
* If we have the old style parameters, convert them to
* a tag list before.
*/
if (tags && tags->hdr.tag != ATAG_CORE)
convert_to_tag_list((struct param_struct *)tags,
meminfo.nr_banks == 0);

if (tags && tags->hdr.tag == ATAG_CORE)
parse_tags(tags);

if (meminfo.nr_banks == 0) {
meminfo.nr_banks = 1;
meminfo.bank[0].start = PHYS_OFFSET;
meminfo.bank[0].size = MEM_SIZE;
}

init_mm.start_code = (unsigned long) &_text;
init_mm.end_code = (unsigned long) &_etext;
init_mm.end_data = (unsigned long) &_edata;
init_mm.brk = (unsigned long) &_end;

memcpy(saved_command_line, from, COMMAND_LINE_SIZE);
saved_command_line[COMMAND_LINE_SIZE-1] = '\0';
parse_cmdline(&meminfo, cmdline_p, from);
bootmem_init(&meminfo);
paging_init(&meminfo, mdesc);
request_standard_resources(&meminfo, mdesc);

/*
* Set up various architecture-specific pointers
*/
init_arch_irq = mdesc->init_irq;

#ifdef CONFIG_VT
#if defined(CONFIG_VGA_CONSOLE)
conswitchp = &vga_con;
#elif defined(CONFIG_DUMMY_CONSOLE)

上一页 [1] [2] [3] [4] [5] [6] 下一页 




上一篇:ARM的嵌入式Linux移植体验之BootLoader

下一篇:设计面向Pocket PC浏览器的Web站点

相关文章:
·新手入门:操作系统重装完全攻略
·快马加鞭 20秒进入Win XP操作系统
·关于提高操作系统重装
·打造N合1操作系统安装光盘
·如何卸载WindowsXP操作系统
·打造完美操作系统的秘籍
·板载RAID功能制作磁盘阵列并安装操作系统
·用.iso文件从硬盘安装redhat linux 7.3
·Windows XP操作系统内存性能优化技巧
·腾讯QQ首次官方支持Linux操作系统
相关软件:
·鸟哥的linux私房菜:基础学习篇
·understanding the linux kernel
·《异性合租:20位大学生的新新体验》
·体验Windows Vista beta 1
·红帽子Red Hat Linux 8.0(3G,5CD)
·Linux 系统命令及其使用详解(大全)
·LINUX设备驱动程序(内核2.2)
·第三方RedHat Linux认证学习指导资料
·LINUX命令整理 磁盘管理
·2000年下半年网络操作系统(全国卷)

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.viphot.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.viphot.com All Rights Reserved. 鄂ICP备05000083号Powered by:viphot