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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]

32

主题

54

帖子

1263

积分

金牌会员

Rank: 6Rank: 6

积分
1263
跳转到指定楼层
楼主
发表于 2016-9-29 11:57:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
您好,        在使用OMAPL138 evm过程中,我使用了MessageQ和ringIO来传输数据。利用ipcs -l ,情况如下:/ G" g3 J! @5 T9 }0 q% k4 h4 u
root@tl:~# ipcs -l
, L7 M: W8 F; G: a* m1 H7 z; q. J9 L
( b$ i2 a( l0 M------ Shared Memory Limits --------
( m* ?5 ^, t7 m8 Bmax number of segments = 4096% `9 Z) u6 s8 B+ q( u
max seg size (kbytes) = 32768
1 T  i7 F% ^, Cmax total shared memory (kbytes) = 8388608
3 V: N$ k5 z# C4 o6 \; e8 Emin seg size (bytes) = 1" S7 B& x, E: O

" ~1 z* d: s$ e3 f9 J! M# H$ L------ Semaphore Limits --------1 S& P3 Q3 {% S) b4 [: O9 v
max number of arrays = 1280 k8 y0 @! L- C: W
max semaphores per array = 250
! S4 e' `  d5 d0 }max semaphores system wide = 32000
. ]: H1 J  p" ~' _max ops per semop call = 32+ o* _% C& Y4 S4 x+ C
semaphore max value = 32767& @9 b; Q! R* \& b* h8 _

6 ~. [! W9 B" A% s------ Messages Limits --------& t5 k& U4 i. y
max queues system wide = 178# o$ F: _; e. j& @: M, B6 I; _
max size of message (bytes) = 8192
" y) B* O  h7 N. @" J) \$ W) Pdefault max size of queue (bytes) = 16384; Y4 w% B, I$ e8 [( |, R8 F! Z$ G; p

# s  a1 a" C$ u5 h8 Y
3 A- o' [. _: Q8 K+ I; m; p+ K但是,用ipcs -a $ g  {2 l8 {; N& W; C: [+ J
root@tl:~# ipcs -a: ^, }8 I; z- V) K2 c  }6 E

  ?+ d8 k5 j9 f2 L7 s------ Shared Memory Segments --------
7 A2 _. W# `' u0 C- v  ?7 h# _  Skey        shmid      owner      perms      bytes      nattch     status      0 O! `; w5 z6 \: G& l  Z' h
0x00000000 0          root       600        1024       1          dest         
. o: Y& C: d7 X" k' X" o6 t0x00000000 196609     root       600        1024       1          dest         7 C# O5 R. h3 Y

8 F. F/ ^4 G5 p; r7 H------ Semaphore Arrays --------) P0 ~1 b; e. [+ c
key        semid      owner      perms      nsems     
8 m) r1 O6 i% P) s4 O6 [7 A2 H0x6411074d 0          root       600        1         + o! t+ _1 j- y: n5 e9 }
0x64110957 163841     root       600        1         5 D2 U7 b1 I* n# m" J6 g
0x641109a1 196610     root       600        1         8 {2 [; s9 b+ s9 ]# q. X

/ W! S$ `1 x0 h) B& I- _% ?  r4 e------ Message Queues --------
+ P$ I& f% B; ~key        msqid      owner      perms      used-bytes   messages   
3 M) W- T2 j$ R
- A8 ~) [9 h# o$ `5 ^, t: Q- N( m
+ z" `; T7 u5 c9 G, n请问,我的共享内存使用大小为 (float *)ring_buffer_acquired(ad->buffer, 2320 * sizeof(float)*18);  远大于1024BYTE ,请问为什么?
) P, s) u* v# O( R5 ^# V
9 S" N5 I: O; i  P, _4 D
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

113

帖子

2110

积分

创龙

Rank: 8Rank: 8

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

使用道具 举报

0

主题

113

帖子

2110

积分

创龙

Rank: 8Rank: 8

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-18 23:50 , Processed in 0.037108 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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