sysbios系统工程指针操作耗时长的问题 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4498|回复: 2
打印 上一主题 下一主题

sysbios系统工程指针操作耗时长的问题

[复制链接]

17

主题

30

帖子

149

积分

注册会员

Rank: 2

积分
149
跳转到指定楼层
楼主
发表于 2016-8-23 10:06:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
目前遇到一个很奇怪的问题,急需解决。我用的omapl138的平台,然后跑sysbios的时候发现对指针赋值的时候消耗很长的指令周期。例如1 Q* W: {* s' K
*p = 20.这么一个赋值语句就要耗时300多个指令周期,而普通的变量赋值例如a=10这个语句才7个指令周期。然后我新建一个sysbios工程,单独做个测试,代码如下:. `3 d1 |. f5 S" p( V4 t8 }2 O8 G
*  ======== main ========" O7 C- P  }: U+ p  ?
*/( A! A$ f! p! F7 d% ~
int test;
4 w3 q/ @3 o; bint *pda;
9 }4 z: Z' Y1 I  P: ]7 jlong long t1,t2,t3,t4,tover,tdelt1,tdelt2;0 H* n, a$ `: R! b/ d# y% Y6 l$ {
Int main()* j+ t3 q" r+ H; s# _' ~+ Z6 c6 G
{% _2 Y- M0 y* N, b$ z/ h
        TSCH=0;5 ~( |3 ?% H& `" @2 W3 p6 c- L0 K1 ]
        TSCL=0;! s/ z' D3 K' n+ A) {7 X
        pda = &test;: W5 R: L+ t: T& F$ a/ B
        t1 = _itoll (TSCH, TSCL);5 M1 ^! ~: G# a6 M% m
        test = 20;+ Y+ p+ q% K4 a3 |( q% j3 o' A
        t2 = _itoll (TSCH, TSCL);; ?0 {/ f* C, J2 B
        *pda = 30;
; V1 V9 c# w! L5 Y+ K6 m! ^4 |6 ]        t3 = _itoll (TSCH, TSCL);8 U. \' i9 O$ m  o
        tdelt1 = t2-t1;
! O0 C% n$ B3 p6 e/ _        tdelt2 = t3-t2;
5 s# ^  k: z% I9 \( d" o" L4 f        return 0;
" @1 L, x& z  Y! u- X+ }; n}
+ E9 H0 y/ P: x+ A0 s, e- B
$ M* D) j0 ^: `% z* T" _就用这个一个简单测试程序测一下程序耗时,果然有问题。这里面tdelt1的值是7,tdelt2的值是362。同样一个赋值语句,一个是直接变量赋值,一个是通过指针赋值,但是用的时间差距好几十倍。这个问题急需解决。麻烦分析一下什么原因。- j0 K! j9 Z2 P# z
有劳有劳。
) n: z2 f4 u: m. ~( b( ]& [& r2 H
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖
回复

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
沙发
发表于 2016-8-23 22:23:02 来自手机 | 只看该作者
主函数中都没有启动 sys/bios 系统调度 应该是没有影响的
回复 支持 反对

使用道具 举报

17

主题

30

帖子

149

积分

注册会员

Rank: 2

积分
149
板凳
 楼主| 发表于 2016-8-24 08:58:38 | 只看该作者
希望缄默 发表于 2016-8-23 22:23
6 c4 \5 d+ p/ [8 h' q' ?4 j  N主函数中都没有启动 sys/bios 系统调度 应该是没有影响的

8 a# H; T. ], Y& b& Z* X7 }5 v' p本来也是担心bios系统对它又影响,所以特地新建了一个sysbios工程,不起任何任务和中断,不起bios系统,就存粹一个main函数。发现也是这么个现象。所以就奇怪了。你们也可以帮忙试一下。就新建一个sysbios工程就能发现这个问题了。: A! E  W; l% I* {
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2025-6-18 05:14 , Processed in 0.040956 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表