小编jae*_*ong的帖子

C函数分析(地址似乎是offseted)

我正在尝试使用-finstrument-functions选项来分析函数调用.基本上,我所做的是将以下内容写入任何已编译的源代码:

static int __stepper=0;
void __cyg_profile_func_enter(void *this_fn, void *call_site)
                              __attribute__((no_instrument_function));
void __cyg_profile_func_enter(void *this_fn, void *call_site) {
  int i=0;
  for( ; i<__stepper; i++ ) printf(" ");
  printf("E: %p %p\n", this_fn, call_site);
  __stepper ++;
} /* __cyg_profile_func_enter */

void __cyg_profile_func_exit(void *this_fn, void *call_site)
                             __attribute__((no_instrument_function));
void __cyg_profile_func_exit(void *this_fn, void *call_site) {
  int i=0;
  __stepper --;
  for( ; i<__stepper; i++ ) printf(" ");
  printf("L:  %p %p\n", this_fn, call_site);
} /* __cyg_profile_func_enter */
Run Code Online (Sandbox Code Playgroud)

并得到以下结果:

 E: 0xb7597ea0 0xb75987a8
  E: 0xb7597de0 0xb7597ef5
  L:  0xb7597de0 0xb7597ef5
 L:  0xb7597ea0 …
Run Code Online (Sandbox Code Playgroud)

c profiling function

7
推荐指数
1
解决办法
1644
查看次数

arm中缓存维护操作中的PoU和PoC

读取 ARM arch 时。参考 手册 v7,我发现了两个概念;一致性点 (PoC) 和统一点 (PoU)。

对于 PoC,看起来所有代理(即 CPU 内核)都可以看到相同的内存副本。

对于 PoU,看起来所有代理(在本例中为 CPU 内核和 MMU)都可以看到相同的内存副本。

我有几个后续问题:

  1. 我的理解正确吗?

  2. 如果是这样,如果我发出 DCCMVAC(数据缓存清理 MVA 到 PoC)并将 MVA 赋予 0x40000000,(假设 PoC 恰好是 0x70000000),

    VA 0x40000000 和 0x70000000 之间的所有缓存条目都被清除了吗?

  3. 那么,如果我发出带有 MVA 0x0 的 DCCMVAC,是否会清除所有数据缓存条目?

  4. PoU 听起来像是 MMU 本身有自己的数据缓存(不是 TLB),用于在主内存中进行页表遍历。这样对吗?

arm cortex-a

7
推荐指数
1
解决办法
4077
查看次数

<script type ="text/javascript + protovis"> +符号是什么意思?

正如标题所要求的那样,

这个+标志意味着<script type="text/javascript+protovis">什么?

有什么好材料吗?

javascript protovis

6
推荐指数
1
解决办法
346
查看次数

期待壳的彩色文本

作为标题,有没有办法在expect shell中使用彩色文本?就像下面的shell脚本echo命令一样.

echo -e "\033[32m Hello World"
Run Code Online (Sandbox Code Playgroud)

colors expect puts

6
推荐指数
1
解决办法
3228
查看次数

什么是openstack中的api-paste.ini文件

我在安装openstack后看到api-paste.ini作为conf文件.它似乎用一些前缀代替python实现,但对此没有任何线索.在这里,我的问题是:

它的脚本是什么?它看起来像以下非常奇怪的语法:

[composite:metadata]
use = egg:Paste#urlmap
/: meta
Run Code Online (Sandbox Code Playgroud)

它在python脚本中如何工作?

openstack python-paste

6
推荐指数
1
解决办法
3324
查看次数

如何更改 Lombok 的 @ToString 生成的方法的输出?

如果我们使用 Lombok 的@ToString,例如作为 的一部分@Data,输出格式很难阅读:

@Data
class Test {
    int a;
    int b;
}

Test test = new Test(1, 2);
System.out.println(test.toString());
Run Code Online (Sandbox Code Playgroud)

这导致以下输出:

a=1, b=2
Run Code Online (Sandbox Code Playgroud)

可以这样打印吗?如果类的结构与映射和列表高度嵌套,则很难阅读。

a=1,
b=2
Run Code Online (Sandbox Code Playgroud)

java tostring lombok

6
推荐指数
2
解决办法
9076
查看次数

无法清除其父级为init的僵尸进程

我有一个僵尸进程:

$ ps aux | grep Zl
root      6641  122  0.0  0 0 ? Zl   08:57 371:10 [ovs_dpdk] <defunct>
Run Code Online (Sandbox Code Playgroud)

而且,其父项看起来像 init

$ pstree
init???acpid
     ??atd
     ??cron
     ??dbus-daemon
     ??dnsmasq
     ??6*[getty]
     ??irqbalance
     ??libvirtd???10*[{libvirtd}]
     ??ovs_dpdk???{ovs_dpdk}               <==== here
     ??rpc.idmapd
Run Code Online (Sandbox Code Playgroud)

但是,杀死-9并不会杀死他...

sudo kill -9 6641
Run Code Online (Sandbox Code Playgroud)

我被困在这里,有什么帮助吗?

linux kill zombie-process

5
推荐指数
1
解决办法
8943
查看次数

ARMv7中外部和内部的定义是什么?

我正在阅读《 ARMv7体系结构参考手册》,其中包含以下关键字:

  • 外部可缓存
  • 内部可缓存
  • 外共享
  • 内部共享

看起来外部/内部可缓存意味着可以在L1(内部)或L2(外部)中缓存内存区域。

我不了解可共享性。

根据手册,它说群集内部可共享,群集之间可共享外部。

在这里,簇是什么意思?它看起来像一组核心,但是我没有找到关于这些核心的确切参考。

任何帮助,将不胜感激。

architecture arm

5
推荐指数
1
解决办法
3498
查看次数

Linux 的帧缓冲区和 GPU 的内存是同一件事吗?

根据我的理解,它们是不同的。Linux 帧缓冲区是一个软件对象,GPU 的内存是映射到 GPU 设备的物理内存。

我的问题如下:

1)我的理解正确吗?

2)如果是这样,以某种方式将两个东西合并成一个看起来可能会提高性能(我猜还有更多的技术细节为什么这是不可能的等等......)

3)如果没有,你能解释一下 Linux 帧缓冲区和 GPU 是如何协同工作的吗?

linux gpu framebuffer

5
推荐指数
1
解决办法
2046
查看次数

是否有针对MS Windows的开源OpenGL实现?

正如标题所要求的那样,

是否有针对MS Windows的开源OpenGL实现?

不是这样一个使用opengl的示例代码,而是构建后给出opengl32.dll的代码.

windows opengl

5
推荐指数
1
解决办法
1643
查看次数