小编Amu*_*umu的帖子

如何在asp.net中的代码中设置Table/TableRow/TabelCell宽度百分比?

如何设置代码背后的百分比宽度?我能想到的唯一选择是获取父宽度并按percent.ie计算TableRow.Width = Table.Width.Value * 25/100(设置表格行的宽度等于表格宽度的25%).但是,最终,如何设置表格宽度百分比?如果没有表宽度,则子控件无法使用其父宽度进行计算.

c# asp.net code-behind

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

为什么使用__get_free_pages()以10或11的顺序分配页面通常会失败?

我的系统内存很多(一台24GB的服务器).在我的系统中,内核空间为崩溃内核分配了320MB和120MB.内存的其余部分用于其他目的.但是,当我用于__get_free_pages()分配顺序为11的连续页面时,内核无法分配2 ^ 10页.为什么?

根据makelinux

订单的最大允许值为10或11(对应于1024或2048页),具体取决于体系结构.然而,除了具有大量内存的新引导系统之外,订单10分配成功的可能性很小.

为什么会这样?我系统中的每个页面是4KB(4096字节),2 ^ 10页= 1024页,总大小是1024*4096 = 4 194 304(字节)~4MB.它只有4MB的连续空间,内核非常小:vmlinuz只有2.1MB而initrd是15MB.整个内核的总内存消耗约为300MB.内核必须绰绰有余地分配4MB的连续页面.即使在1GB/3GB内核/用户的普通机器上,也确保内核不会耗尽整个1 GB.但是,只有4MB连续页面的分配怎么可能失败呢?我认为,在内核空间中,内存不会分散在物理内存中(由于虚拟内存映射),而是线性且连续的.

我尝试首先加载我的内核模块,分配2 ^ 10页,但它失败并转储堆栈跟踪:

[    6.037056]  [<ffffffff810041ec>] dump_trace+0x86/0x2de
[    6.037063]  [<ffffffff8122fe83>] dump_stack+0x69/0x6f
[    6.037070]  [<ffffffff8108704e>] warn_alloc_failed+0x13f/0x151
[    6.037076]  [<ffffffff8108786a>] __alloc_pages_nodemask+0x80a/0x871
[    6.037081]  [<ffffffff81087959>] __get_free_pages+0x12/0x50
Run Code Online (Sandbox Code Playgroud)

linux memory kernel

8
推荐指数
1
解决办法
3963
查看次数

Linux如何知道调用哪个ioctl函数?

这是ioctl用户空间中的调用:

int ioctl(int fd, int cmd, ...);
Run Code Online (Sandbox Code Playgroud)

据我所知,当我们想要执行IO操作时,我们ioctl使用一组请求(命令)定义我们自己的函数,将我们分配ioctlfile_operations结构,如下所示:

struct file_operations fops = {
 .read = device_read,
 .write = device_write,
 .ioctl = device_ioctl, // device_ioctl is our function
 .open = device_open,
 .release = device_release,
};
Run Code Online (Sandbox Code Playgroud)

device_ioctl用户空间接口相比,该功能的定义不同:

static long device_ioctl(struct file *f, unsigned int cmd, unsigned long arg)
Run Code Online (Sandbox Code Playgroud)

我认为基于文件描述符,内核可以获得适当的文件结构并调用设备ioctl.

这只是一个猜测,因为我找不到通用函数定义,其中内核ioctl根据fd传递到泛型ioctl接口的文件描述符选择适当的函数?ioctl我只能找到3个定义,但显然那些只是设备的定义,而不是内核:ioctl

c linux ioctl linux-device-driver linux-kernel

8
推荐指数
1
解决办法
8043
查看次数

为什么在Emacs中使用CEDET进行代码完成的速度如此之慢?

我最近尝试了KDevelop.它比(semantic-complete-self-insert或)快得多(立即)查找符号(变量,函数名,类,结构...)M-Ret.使用M-Ret速度更快,但它没有像其他IDE一样好的格式,而是像无意义的那样 From nil >.在emacs中,我必须等待至少~1秒,在许多情况下,等待CEDET查找所有包含的相关源文件,这需要很长时间.

我用过auto complete clang,但似乎没有速度提升.为什么会这样:(?我喜欢Emacs和所有,并且在我发现KDevelop之前已经将它用于我的C/C++近一年,但使用Emacs意味着代码完成应该是微不足道的和可选的?

c++ emacs cedet

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

如何在RPM spec文件中运行shell命令?

如何在spec文件中运行shell命令?我想执行类似的东西:

uname -r | sed s/(...stuff...)/(...stuff...)
Run Code Online (Sandbox Code Playgroud)

rpm rpm-spec

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

没有垃圾收集器的Lisp用于低级编程

有没有Lisp的方言,它有Lisp语义和C语言的低级操作?类似于检索任意内存地址(虚拟或物理内存)并使用它执行某些操作; 指向硬件设备的指针......

例如:

(defvar a '(1 2 3 4)) ;; I have a list
(defvar b (cdr a)) ;; b is the cdr of a. But I want b to
                   ;;  actually refer to the tail of a
(setf b '(4 5 6)) ;; b now has new value, but a remains unchanged
Run Code Online (Sandbox Code Playgroud)

我想要的是使用Lisp来表达低级问题.例如,在裸机上运行Lisp时如何控制单个字节和位?在C中,我可以获得一个指针并执行指针算法以指向我想要的任何内存空间(虚拟或物理).指针也可以由硬件设计者指向设备和任意定义的地址.

我为什么需要这个?好吧,我想学习如何在低级编程中使用Lisp.从长远来看,我想编写一个简单的OS来学习,但是在Lisp中.我将在C中编写一个用于初步理解,但如果我只能用C编写,我怎么能确定并说我理解如何实现操作系统?我想我只有真正理解如何实现操作系统,如果我能用C语言以外的其他语言编写它来确保.

我不想为操作系统编写类似C core的内容,而为其他所有内容编写Lisp.

lisp garbage-collection

7
推荐指数
2
解决办法
3708
查看次数

为什么我们在最近对算法中最多比较7个点?

因此,如果在δ*2δ矩形R内,我们只需要比较从左侧的一个点到右侧的7个点.我不明白的是,尽管阅读了证据,但是在R里面,我们可以在矩形内填充尽可能多的点,这可能超过7的总数.想象一下,如果我们有δ= 2,点p(1.2, 1.1)在左侧,在右侧,我们有一大堆q,如q(1.5,1.7),q(1.4,1.3),.....怎么只能比较7点检测到最近的一对?我认为如果是这种情况,我们必须比较矩形R中的每个点.请帮我.

algorithm

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

在Emacs GUI中创建框架的行为类似于终端中的框架

在终端中,Emacs管理多个帧,其名称为F1,F2 ....因为它无法创建多个OS窗口.我希望GUI版本以这种方式运行,也就是说,我希望它在单个Emacs窗口中创建许多虚拟帧,而不是创建多个OS窗口.有办法吗?

emacs

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

在 Yocto 中,如何包含来自其他配方的头文件

我的程序依赖于poco提供头文件和共享库的配方。但是,我无法使用poco配方中的头文件,这会导致错误Poco/Delegate.h: No such file for directory.

如何在构建时为我的软件包提供标头?

这是一个示例食谱:

SUMMARY = ""
DESCRIPTION = ""
AUTHOR = ""
LICENSE = "CLOSED"
LIC_FILES_CHKSUM = ""
HOMEPAGE = ""
BUGTRACKER = ""

S = "${WORKDIR}"

SRC_URI = " file://foo.cpp \
            file://CMakeLists.txt \
"

inherit pkgconfig cmake

DEPENDS_foo = "poco"
RDEPENDS_foo = "poco"

do_install() {
    install -d ${D}/${bindir}
    install -m 755 ${S}/foo ${D}/${bindir}
}

FILES_${PN} = "${bindir}/foo"
Run Code Online (Sandbox Code Playgroud)

yocto

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

如何将Gnus与Google Group等新闻组一起使用?

我试过这个设置:

(setq gnus-select-method '(nnml "comp.lang.lisp"))
Run Code Online (Sandbox Code Playgroud)

但是当我激活Gnus时,没有显示任何组织.如何添加组comp.lang.*

编辑:我尝试使用nntp:

(setq gnus-select-method '(nntp "comp.lang.lisp"))

但它不起作用:

Warning: Opening nntp server on comp.lang.lisp...failed: ; Server nntp+comp.lang.lisp previously determined to be down; not retrying

emacs gnus

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