小编Mar*_*ark的帖子

VirtualBox:扩展分区

我安装了centos-5.6的virtualbox-4.1.0.现在我想扩展我之前为虚拟机安装分配的VM映像,它是8Gb,现在还不够.有没有办法扩展分区而不丢失信息?

实际上在centos中我有一个root fs和我的家庭目录等等所以这个分区最终需要调整大小.

提前感谢您的建议!

virtualbox virtual-machine

29
推荐指数
4
解决办法
3万
查看次数

在C++中将引用转换为指针表示

有没有办法在c ++中"转换"对指针的引用?在下面的例子,func2已经定义了原型和我不能改变它,但func是我的API,我想为pass两个参数,或一(组和第二组,以NULL)或既不(均设置为NULL):

void func2(some1 *p1, some2 *p2);

func(some1& obj, some2& obj2)
{
   func2(..);
}
Run Code Online (Sandbox Code Playgroud)

c++ pointers reference

26
推荐指数
4
解决办法
4万
查看次数

"静态"功能的原型

我不太确定是否真的有必要在C中使用静态函数的原型.只要我不输出这些函数(即它们没有外部链接),这会带来什么其他好处?

谢谢.

c standards

12
推荐指数
3
解决办法
5814
查看次数

在C++中std :: map里面有什么数据结构?

我是初学者并且正在学习C++很难理解std :: map概念,因为我正在玩的代码暗示它map是一个搜索树,即std :: map对象的所有名称都有*tree作为以及评论.

但是阅读本材料后http://www.cprogramming.com/tutorial/stl/stlmap.html我倾向于认为性病::地图都有无关树或哈希值.

所以我很困惑 - 代码中的变量和注释对我来说,或者主题更复杂然后我认为它是:)

c++ std

9
推荐指数
3
解决办法
2万
查看次数

无法"rmmod"模块

我正在使用涉及内核和用户空间代码的大型嵌入式软件(ARM处理器,嵌入式Linux 2.6.31,busybox).首先加载一个内核模块,然后守护进程与模块建立netlink套接字.

这里的问题是在杀死守护进程后,我无法再从内存中卸载模块:

% rmmod _module.ko
% rmmod: _module.ko: Resource temporarily unavailable
Run Code Online (Sandbox Code Playgroud)

分析表明,错误(返回值是-11,即EAGAIN?)是try_stop_module()在syscall delete_module()定义中调用的kernel/module.c.函数try_stop_module()依次调用stop_machine(),这就是我卡住的地方,

我不确定那里到底发生了什么.我认为根本原因是守护进程中的某个地方打开了与模块的连接,显然是其他东西并且在退出时没有正确关闭/清理(显然有些引用/锁没有被释放?)

有没有人知道还有什么可以看和探测?

linux kernel-module linux-kernel

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

C代码中MAC地址的表示

我经常在C代码中看到MAC地址的这种表示:

struct mac_addr {
   unsigned char bytes[6];
}
Run Code Online (Sandbox Code Playgroud)

为什么需要在一个结构中放一个数组,为什么不只是有一个数组呢?这提供了什么好处?

谢谢.

c embedded network-programming

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

sizeof()应用于结构和变量

请考虑以下代码段:

struct foo {
  int a;
  int b;
  int c;
};

struct foo f;
printf("%u, %u\n", sizeof(struct foo), sizeof(f));
Run Code Online (Sandbox Code Playgroud)

代码返回相同的值,但我想知道应用于变量的sizeof()是否正确或者这只是巧合?

谢谢.

c clang

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

调试内核模块(内存损坏_

我正在调试我的内核模块,它似乎有内存损坏,基本上由alloc_netdev()为'net_device'实例分配的一块内存已经损坏.

1)我打开CONFIG_DEBUG_KERNEL,CONFIG_DEBUG_SLAB,CONFIG_DEBUG_KMEMLEAK在我的内核的.config,但是不知道从什么期望kmemleak.是否应该在我阅读时打印出可疑内存泄漏的跟踪转储/sys/kernel/debug/kmemleak?有没有办法重置累积的统计数据/信息kmemleak?最重要的是 - 任何人都可以帮助破译输出,例如:

unreferenced object 0xc625e000 (size 2048):
  comm "swapper", pid 1, jiffies 4294937521
  backtrace:
    [<c00c89f0>] create_object+0x11c/0x200
    [<c00c6764>] __kmalloc_track_caller+0x138/0x178
    [<c01d78c0>] __alloc_skb+0x4c/0x100
    [<c01d8490>] dev_alloc_skb+0x18/0x3c
    [<c0198b48>] eth_rx_fill+0xd8/0x3fc
    [<c019ac74>] mv_eth_start_internals+0x30/0xf8
    [<c019c5fc>] mv_eth_start+0x70/0x244
    [<c019c810>] mv_eth_open+0x40/0x64
    [<c01e00f0>] dev_open+0xb4/0x118
    [<c01df788>] dev_change_flags+0x90/0x168
    [<c001a3e4>] ip_auto_config+0x1bc/0xecc
    [<c00212f4>] do_one_initcall+0x5c/0x1bc
    [<c00083d0>] kernel_init+0x8c/0x108
    [<c0022f58>] kernel_thread_exit+0x0/0x8
    [<ffffffff>] 0xffffffff
Run Code Online (Sandbox Code Playgroud)

2)我也想知道我是否可以在这个内存上应用一些"只读"属性,这种方式我希望Oops在有人试图修改内存时生成.听起来合理吗?

感谢任何建议,谢谢.

标记

arm memory-management linux-device-driver linux-kernel

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

软件定义的网络和OpenFlow

我正在尝试深入研究这些新概念,即SDN和OpenFlow.我不清楚的一件事是传统路由(OSPF,BGP等)如何在SDN中完成,或者它完全消失了,取而代之的是一些轻量级机制?

我会很感激任何提示,链接,以便更好地理解这一点.谢谢!

标记

networking openflow

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

访问超出C和C++限制的数组

int data[8];
data[9] = 1;
Run Code Online (Sandbox Code Playgroud)

c ++标准对此有何评论?这是未定义的行为吗?

至少C编译器(gcc -std = c99 -pedantic -W -Wall)对此没有任何说明.

谢谢.

c c++ arrays undefined-behavior

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