xuing
xuing

注册于 12 years ago

回答
0
文章
0
关注者
0

这东西不错,顺便问一下,有谁会去看奥运小组赛上海赛区的比赛?

关于游泳的葵花宝典:
眼一闭,嘴一张,水里一扎,扑腾两下。
浮上来的,OK,恭喜你
沉下去的,。。。。。。。。。。。。

不需要再start.s中有啥变化,但是.data段进行了重定位,需要在初始化时从Flash搬移到SDRAM上。
另外问一句:RTTI是什么选项?

OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
OUTPUT_ARCH(arm)
ENTRY(_start)
SECTIONS
{
. = 0x0c000000;

__text_start = .;
.text :
{
*(.vectors)
*(.text)
*(.text.*)
*(.stub)
*(.gnu.linkonce.t*)
*(.glue_7t) *(.glue_7)
} =0

.init :
{
KEEP (*(.init))
} =0

.ctors :
{
KEEP (*(.ctors))
KEEP (*(.ctor))
}
.dtors :
{
KEEP (*(.dtors))
KEEP (*(.dtor))
}
__text_end = .;
_etext = .;
PROVIDE (etext = .);

.fini :
{
KEEP (*(.fini))
} =0

__rodata_start = .;
.rodata : { *(.rodata) *(.rodata.*) *(.gnu.linkonce.r*) *(.eh_frame) *(.jcr)}
.rodata1 : { *(.rodata1) }
__rodata_end = .;

__data_start = .;
. = ALIGN(4);
.data :
AT(__rodata_end)
{
*(.data)
*(.data.*)
*(.gnu.linkonce.d*)
SORT(CONSTRUCTORS)

*(.data1)
*(.gcc_except_table)

*(.sdata)
*(.sdata.*)
*(.gnu.linkonce.s.*)
}
__data_end = .;
_edata = .;
PROVIDE (edata = .);

. = ALIGN(4);
__bss_start = __data_end;
__bss_start__ = __data_end;
.sbss :
{
*(.sbss)
*(.sbss.*)
*(.scommon)
}
.bss :
{
*(.bss)
*(.bss.*)
*(COMMON)
. = ALIGN(32 / 8);
}
. = ALIGN(32 / 8);
_bss_end__ = . ; __bss_end__ = . ; __end__ = . ;
PROVIDE (end = .);
__bss_end = .;

/* Stabs debugging sections. */
.stab 0 : { *(.stab) }
.stabstr 0 : { *(.stabstr) }
.stab.excl 0 : { *(.stab.excl) }
.stab.exclstr 0 : { *(.stab.exclstr) }
.stab.index 0 : { *(.stab.index) }
.stab.indexstr 0 : { *(.stab.indexstr) }
.comment 0 : { *(.comment) }

_end = .;
}

以上,是在我的板子上的部分配置,你可以参考一下

在我们以前的连接文件中已经有.init段了,这个应该可以了。
.finit段我认为要不要无所谓

Flash的起始地址是0,程序是下载在SDRAM上运行的(地址不是0),而中断响应是在以0为起始地址的中断向量表中。
是不是要不此时响应的中断跳转到SDRAM上的中断服务程序里?具体应该怎么做那?

链接脚本中和C++操作符相关的段有:
.ctors :
{
KEEP (*(.ctors))
KEEP (*(.ctor))
}
.dtors :
{
KEEP (*(.dtors))
KEEP (*(.dtor))
}

ctors 段是存放构造函数的指针的段,dtors 段是存放析构函数指针的段,添加这两个段后应该可以基本支持C++的类了

俯卧撑好像成了流行词了
俯卧撑至少有8种练习方式。

  一、扩胸式。双手的手掌作为支撑点,双臂张开,与肩同宽,或比肩更宽,背部、腰部和臀部呈一条直线,肘部用力,屈臂运动即可。此方式主要锻炼的是胸肌、上臂的肱三头肌以及腹部肌肉。

  二、夹肩式。动作与上同,只是双手间距较窄,并以双拳作为支撑点,拳眼向前。这种方式锻炼的是臂力,而且能增加手腕的力量和拳的硬度。练习时应注意,所选的支撑地面可以先软后硬,手腕支撑时要绷紧,以免扭伤。

  三、铁牛耕地式。用拳或用手掌作为支撑点。双手撑地,双臂张开,与肩同宽。双脚趾着地,双手双脚平行。头向斜前方顶,前脚掌、双手、颈、腰一齐用力,同时腰下塌,贴着地皮。然后臀部上翘,腰再下塌,身体后拉,整个动作完成。斜前斜后的动作反复做即可。这种练习主要针对颈部,并增强背肌、手腕、脚踝力量。

  四、手指功法。主要是以十指为支撑点,其他动作与前两种方式相同。随着力量增加,着地的手指可以依次递减。该方式主要练习指力,增强手的握力、抓力、合力,力透指尖。应注意的是,若指力达不到支撑身体的力量,可以先让手指顶着墙面练习,身体斜撑。待指力慢慢增强后,再逐渐放到水平地面来练,以防手指受伤。

  五、鲤鱼卧莲式。身体侧卧,单拳或单掌着地(一般是单拳),斜撑地面,双脚交叉斜撑。例如,右拳撑地,左臂向上伸展,双臂呈十字形,掌握身体平衡。左脚内侧、右脚外侧着地支撑。屈臂下撑时,腰部用力,头和腰后仰,如同盘卧的鲤鱼,然后恢复原式,再反复下撑。

  该方式主要锻炼三角肌(俗称“虎头肌”)、上臂、腰部和腹部的力量。练习时若力量不够可以先选择较软的地面,臂部的力量要用足。

  六、倒立式。初练者可依附墙面倒立,脚搭在墙面上,双手与肩同宽,双臂弯曲,做屈臂下按。后期,脚可以离开墙面来做俯卧撑。该方式主要训练颈部和臂部的力量。练习时注意掌握身体平衡。

  七、负重练习。动作与扩胸式和夹肩式相同,只是在背部放上重物,如哑铃片。在臂部力量增强、身体动作协调后,重物的重量可依次递增。

  八、单掌或单拳练习。动作与扩胸式和夹肩式相同,但单掌或单拳着地,做动作时双手交替撑地。该方式主要练习单臂力量。若臂力不够,开始时可先在斜坡上练习,随着力量增强,逐渐抬高脚的支撑点,最后可单掌或单拳甚至一个手指支撑,身体倒立。练习时要循序渐进。

这下嵌入式操作系统的竞争恐怕要空前惨烈了

发布
问题