如何查看syslink 组件使用共享内存的情况 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

用户名  找回密码
 立即注册

QQ登录

只需一步,快速开始

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

[已解决] 如何查看syslink 组件使用共享内存的情况

[复制链接]

32

主题

54

帖子

1263

积分

金牌会员

Rank: 6Rank: 6

积分
1263
跳转到指定楼层
楼主
发表于 2016-9-29 11:57:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
您好,        在使用OMAPL138 evm过程中,我使用了MessageQ和ringIO来传输数据。利用ipcs -l ,情况如下:! j" F/ r% v0 c3 E% I8 t2 R7 ?
root@tl:~# ipcs -l
" ?7 ?7 y) K  y3 u
7 R. K/ t. y5 L7 S------ Shared Memory Limits --------
5 h7 B4 q  ~4 Q% s1 I: W. e3 Rmax number of segments = 4096: x# @( b0 D2 o8 ~/ B+ m
max seg size (kbytes) = 32768
1 m, I( v# a! V1 Q8 ymax total shared memory (kbytes) = 8388608
" q0 F% j! E( P8 omin seg size (bytes) = 1
7 w. D. T9 R, E& Y2 E! w: G
3 x- y" M2 T( L6 I! k* G------ Semaphore Limits --------
. u3 F3 M6 l) Y# x) R5 O7 x4 b! xmax number of arrays = 1289 L1 v; b9 V7 {4 x4 q8 R7 T
max semaphores per array = 250
' c) ~* i5 M' \' ~2 Qmax semaphores system wide = 320007 \0 A2 P( P* F& k1 j
max ops per semop call = 32
$ [5 w; ?! [- d  ~" e# Nsemaphore max value = 32767' b/ w' }4 E6 N# L7 P# y

; ]% x! Y) \9 C. R- i6 y& B------ Messages Limits --------
% G' M* j' m9 vmax queues system wide = 178
8 q( N* p0 X7 n* J( kmax size of message (bytes) = 8192
, {+ _/ ^/ x' r; kdefault max size of queue (bytes) = 16384( G8 H* a; G. I+ B4 o
1 S. }% G) Z+ _) c5 P7 j- P8 @

( d2 H9 V' Q! v' m4 j- h但是,用ipcs -a
& k0 h3 T" @* _1 ^6 J( hroot@tl:~# ipcs -a; c0 `' _$ ^0 R1 B7 H
" u! k1 @+ A; J1 Y9 v/ q
------ Shared Memory Segments --------
; [5 g3 X  z& k; Q" Q! ^- g% a9 ukey        shmid      owner      perms      bytes      nattch     status      
5 }  }7 l1 h4 {; q0 W7 u1 }9 M0 n0x00000000 0          root       600        1024       1          dest         
4 k; V2 `5 b3 {% Y/ Q" B0x00000000 196609     root       600        1024       1          dest         + s8 n' M( W- m5 p9 ]0 ~  d( i

# G$ [+ {! z; \9 s6 r) `' C1 N------ Semaphore Arrays --------( A# T7 @+ a1 E) _) S3 t: g& B
key        semid      owner      perms      nsems     
6 F! h, Y( a8 N) Q% v) N6 b- w* i# ]0x6411074d 0          root       600        1         
! ^2 W5 V; o# p( k  F' I2 x$ I0x64110957 163841     root       600        1         
8 Y' n$ _" e0 I0x641109a1 196610     root       600        1         
6 d3 P# W/ @2 ^6 Z; O& ]6 V# g2 @8 {/ o5 D! I1 o& H  F- r
------ Message Queues --------7 Z" a5 R0 G, ~# L& Q
key        msqid      owner      perms      used-bytes   messages   
6 S6 h9 i) k, D
3 |9 m! u1 h9 ]& ]+ N. J
$ P/ A. Y  a; d, z( o; _请问,我的共享内存使用大小为 (float *)ring_buffer_acquired(ad->buffer, 2320 * sizeof(float)*18);  远大于1024BYTE ,请问为什么?) k6 n, Q3 u- S, G% s" z8 ^  L

( y7 r$ R- T' V/ w2 ~" p$ O
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

举报

0

主题

113

帖子

2096

积分

创龙

Rank: 8Rank: 8

积分
2096
沙发
发表于 2016-9-30 09:27:35 | 只看该作者
ipcs 查看的是 Linux 进程间通信的 ipc 资源,而 syslink 所使用的共享内存,并不属于 linux 的,它是 arm 和 dsp 之间的共享内存,通过 syslink 组件访问。或者 linux  下 mmap 也可以。但是 ipcs 无法查询。
回复 支持 反对

举报

0

主题

113

帖子

2096

积分

创龙

Rank: 8Rank: 8

积分
2096
板凳
发表于 2016-9-30 09:43:43 | 只看该作者
如果是在 8148 上,可以使用 sys_top 命令来查看多核之间的共享内存情况,但 138 不支持。
回复 支持 反对

举报

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

本版积分规则

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

GMT+8, 2025-7-4 13:16 , Processed in 0.042903 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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