-
linux – 是负责设置堆栈的程序还是操作系统
所属栏目:[Linux] 日期:2021-01-14 热度:170
提出这个问题是因为作者正在构建一个编译器(src > asm),并且正在编写用于生成汇编代码的代码. 程序在基于Linux(任何操作系统)的操作系统上执行时,首先发生的事情之一就是堆栈设置完毕,SP寄存器被分配堆栈开头的内存地址. 我很好奇上面做这件事的责任在于程[详细]
-
c – 在跨平台库中工作
所属栏目:[Linux] 日期:2021-01-14 热度:155
在C中编写跨平台库的最佳实践是什么? 我的开发环境是Linux上的Eclipse CDT,但我的库应该可以在Windows上本地编译(例如从Visual C). 谢谢. 最佳答案 在某种程度上,这将取决于您的图书馆要完成的目标. 例如,如果您正在开发GUI应用程序,则需要专注于使用经过良[详细]
-
正确的Linux串口初始化序列
所属栏目:[Linux] 日期:2021-01-14 热度:132
我写了一个必须在Linux上使用串口的应用程序,尤其是ttyUSB.使用标准的select()/ read()循环和write()执行读写操作,并且它们可能没有任何问题,但初始化代码(或缺少某些部分)会损坏tty子系统中的某些内容.这里是: vuxboot(string filename,unsigned baud = B1[详细]
-
克隆相当于fork?
所属栏目:[Linux] 日期:2021-01-14 热度:174
我想使用克隆功能的命名空间功能.阅读联机帮助页,看起来克隆有许多我需要担心的错综复杂的细节. 是否有一个等效的克隆调用好olfork()? 我已经熟悉fork了,相信如果我有克隆的起点,我可以从那里添加标志和选项. 最佳答案 我认为这会起作用,但我并不完全确定某[详细]
-
如何在Linux上编译Intel Mac二进制文件?
所属栏目:[Linux] 日期:2021-01-14 热度:178
我正在阅读一篇关于cross-compiling for OSX on linux的文章,但这很难理解. 我需要什么工具?什么配置是必要的? 是否还有用于创建包的工具? 最佳答案 首先你需要odcctools,它包含汇编程序和链接器等(比如binutils但能够处理Mach-O对象格式).然后你需要官方[详细]
-
linux – 如何用AWK选择一些列?
所属栏目:[Linux] 日期:2021-01-14 热度:105
我想在文件中选择一些列并在其上运行一些命令. 所以我的剧本就是这个 awk '{print $1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$19}' test.txt outpot.txt 但这打印到另一个文件,我试图这样做 awk '{print $1,$16}' test.txt | next commands (这个[详细]
-
linux – 通过标准输入从shell脚本提交多个文件
所属栏目:[Linux] 日期:2021-01-14 热度:62
我有一个程序,从命令行调用时从标准输入读取.通常用户会输入一些信息,在新行上按C-d表示文件结束,程序将处理该文件.然后再次提示用户,输入更多文本,再按C-d表示第二个文件的结束. 我正在寻找一个shell脚本,它将调用该程序并自动提交这两个文件.我想做这样的[详细]
-
在我的程序中使用OpenBSD的malloc,realloc和free
所属栏目:[Linux] 日期:2021-01-14 热度:120
我想在我的Debian lenny桌面而不是glibc上使用OpenBSD的malloc,realloc和free实现. 他们只是简单地替换:他们会在我的Linux桌面上工作吗? 我需要哪些文件以及哪些OpenBSD软件包包含它们? 最佳答案 谷歌拥有自己的malloc替代库 http://code.google.com/p/go[详细]
-
如何使用冷缓存启动程序
所属栏目:[Linux] 日期:2021-01-14 热度:174
我多次运行基准测试,记下平均读数.但我注意到在第一次运行后,后续运行速度更快.我想这与指令缓存有关,所以当我下次运行程序时,基准测试已经在缓存中有指令.有没有办法用冷指令和数据缓存启动程序? 最佳答案 这是正常行为.避免这个问题的一种方法是在主要运[详细]
-
linux – 多线程应用程序的核心转储只显示一个线程
所属栏目:[Linux] 日期:2021-01-13 热度:77
我有一个测试应用程序在c中启动其main()中的几个线程,然后永远在main()中休眠. 其中一个线程正在做一些导致段错误的事情,并且生成了一个coredump(之前设置了ulimit -c unlimited). 我正在使用gdb打开核心并查看使用线程应用所有bt或info线程,我只有一个线程([详细]
-
在Linux中,如何在自己的进程组中启动进程?和更多
所属栏目:[Linux] 日期:2021-01-13 热度:192
我想在自己的进程组中启动一个进程(或者,一旦启动就更改其组)并且: 让组中的进程响应来自终端的Ctrl C. 获取进程组的id,以便我可以通过kill命令终止组中的所有进程. 注意:我尝试过setsid prog [args]但是进程没有响应来自终端的Ctrl C,也没有得到新的进程[详细]
-
Linux上的ARM体系结构的任何Web和Java IDE?
所属栏目:[Linux] 日期:2021-01-13 热度:85
我目前在ARMv7微处理器上运行Debian Linux(又名我的android手机.;)) 它真的很棒,没有一个问题.令人惊讶的是,与许多其他基于arm的Linux发行版相比,为arm编译了大量的应用程序支持. 我很乐意将它用于一些Web开发,以及Java编程和编译,但是我在尝试找到任何架构[详细]
-
linux – 帮助我从ABS指南中了解bash中这个简单的io重定向
所属栏目:[Linux] 日期:2021-01-13 热度:88
exec 31 # Save current "value" of stdout. ls -l 21 3 3- | grep bad 3- # Close fd 3 for 'grep' (but not 'ls'). # ^^^^ ^^^^exec 3- # Now close it for the remainder of the script. 我得到第3行,fd 3正在关闭. 怀疑:第一行将fd 3重定向到stdout,全[详细]
-
正则表达式 – 重命名所有’.’除了扩展名之外的文件名中的’_’
所属栏目:[Linux] 日期:2021-01-13 热度:58
我正在尝试创建一个替换所有“.”的脚本.用“_”出现在文件名中.例如,当我尝试替换所有“”符号时,我使用此: rename 'y/ /_/' '{}' file# test 1.2.jpg - test_1.2.jpg 哪个工作正常,但当我尝试使用“.”时.符号扩展名也会改变: rename 'y/./_/' '{}' file[详细]
-
c – HeapCreate,Linux中的HeapAlloc,Linux的私有分配器
所属栏目:[Linux] 日期:2021-01-13 热度:156
在Windows中,对于要求很高的应用程序,程序员可以使用HeapCreate,HeapAlloc来更好地管理和控制内存的分配 加速它(也就是私有分配器). Linux c编程中的等价物是什么? 最佳答案 如果您想使用自己的私有分配器,那么使用mmap()将一定量的内存映射到您的进程中,然[详细]
-
linux – 重新排序ELF文件部分的简单方法
所属栏目:[Linux] 日期:2021-01-13 热度:175
我正在寻找一种简单的方法来重新排序ELF文件部分.我有一系列自定义部分,我希望所有部分按特定顺序对齐. 我发现如何做到这一点的唯一方法是使用链接器脚本.但是,文档指出指定自定义链接描述文件会覆盖默认值.默认的链接描述文件中包含很多内容,我不想在自定义[详细]
-
linux – 像UAC一样自动调用gksudo
所属栏目:[Linux] 日期:2021-01-13 热度:176
这是关于我通过玩游戏“键入一个命令,并记住前置sudo或你的手指会被打耳光”的压力. 我想知道是否有可能以某种方式配置我的Linux系统或shell,以便当我忘记输入例如“sudo apt-get install emacs”,而不只是告诉我我做错了什么,gksudo会启动,让我承认我的凭据[详细]
-
刷新组播组成员资格
所属栏目:[Linux] 日期:2021-01-13 热度:75
我有几台嵌入式计算机正在监听并将rtp音频数据流式传输到多播组.它们连接到智能管理交换机(Netgear GS108Ev2),它在其端口上执行基本的igmp监听和多播过滤,因此我的(W)LAN的其余部分不会被淹没. 开始时一切正常,大约500-520秒.之后,他们在离开并再次加入该组[详细]
-
有没有简单的方法可以在Linux下用C/C++获得夏令时转换时间
所属栏目:[Linux] 日期:2021-01-13 热度:187
我想获得DST的过渡时间 在Linux下提供时区或TZ环境. 我的方式是愚蠢的,给出一年的开始并尝试每小时然后检查当地时间的tm_isdst值以获得过渡时间. 有一些简单的方法可以做到这一点吗? 最佳答案 glibc中有源代码,您可以在这里浏览: http://sourceware.org/gi[详细]
-
linux – 如何防止内核将数据包传递到网络层?
所属栏目:[Linux] 日期:2021-01-12 热度:155
网卡接收的帧将由驱动程序处理,然后由Linux内核传递给协议栈的上层. 有没有一种简单的方法可以防止内核将数据包传递到网络层?这样我就可以从数据链路层接收帧并自己处理所有数据包(也许应用程序层程序会被重写)? 我认为重新编译内核是必要的,如果这是通过[详细]
-
linux – XMonad:dmenu在启动时没有启动/生成
所属栏目:[Linux] 日期:2021-01-12 热度:123
XMonad的新手并且热爱它到目前为止.我有一个相当普通/常规的XMonad设置,我遇到dmenu问题.当我登录并点击mod时没有任何反应.如果我然后打开一个终端并点击xmonad restart然后mod p,dmenu将会正常工作. 我的xmonad.hs一定有问题吗?我尝试了XMonad的非自定义设[详细]
-
linux – 为什么dlsym()返回的符号的值为null?
所属栏目:[Linux] 日期:2021-01-12 热度:87
在Linux中.根据dlsym(3)Linux手册页, *Since the value of the symbol could actually be NULL (so that a NULL return from dlsym() need not indicate an error),* 为什么这个,符号(特别是一个函数)何时才能实际为NULL?我正在审查代码,并发现一个使用dler[详细]
-
linux – 下载后创建自定义的.dmg文件
所属栏目:[Linux] 日期:2021-01-12 热度:58
我想分发一个跨平台的应用程序,可执行文件略有不同,具体取决于下载它的用户.这是通过在可执行文件中的某个位置放置占位符字符串来完成的,该位置字符串在下载时被特定于用户的内容替换 必须执行这些字符串替换的Web服务器是Linux机器.对于Windows,可执行文件[详细]
-
java – Native Library bluecove_arm不可用
所属栏目:[Linux] 日期:2021-01-12 热度:61
我正在尝试编译/运行在运行Ubuntu的BeagleBone Black上使用BlueCove库的程序.但是,我在运行时不断收到此错误: Native Library bluecove_arm not availablejavax.bluetooth.BluetoothStateException: BlueCove library bluecove not availableat com.intel.b[详细]
-
Python和FIFO
所属栏目:[Linux] 日期:2021-01-12 热度:84
我试图在linux下使用Python来理解FIFO,我发现了一个我不理解的奇怪行为. 以下是fifoserver.py import sysimport timedef readline(f): s = f.readline() while s == "": time.sleep(0.0001) s = f.readline() return swhile True: f = open(sys.argv[1],"r")[详细]