-
测量Linux中的进程统计信息
所属栏目:[Linux] 日期:2020-12-27 热度:73
我正在构建编程竞赛软件.用户的程序由我们的判断系统接收,并通过编译并通过fork()和exec()运行来评估.父进程等待子进程(提交的进程)退出,然后清除它. 为了提供有关程序运行的有用信息,我想测量程序使用的CPU时间和峰值内存. Linux内核是否跟踪这些值?有没[详细]
-
如何在Linux内核中对特定函数进行基准测试或跟踪?
所属栏目:[Linux] 日期:2020-12-27 热度:86
如何使用ftrace()(或其他任何东西)跟踪 Linux内核中特定的用户定义函数?我正在尝试创建和运行一些微基准测试,所以我希望有时间运行某些功能.我已经阅读了(至少尽可能多的)文档,但朝着正确方向迈出的一步将是非常棒的. 我倾向于ftrace(),但在Ubuntu 14.04[详细]
-
linux – 如果运行则Upstart停止
所属栏目:[Linux] 日期:2020-12-27 热度:174
我有一个Jenkins工作来停止节点应用程序,部署代码并启动应用程序. 使用Upstart脚本完成启动/停止. 我使用initctl stop node-App 如果作业正在运行,这很有效.但是如果应用程序已经死亡或处于停止状态,则输出为initctl:未知实例: 这会导致Jenkins作业失败,[详细]
-
linux – VIM中的交互式终端
所属栏目:[Linux] 日期:2020-12-27 热度:183
我正在使用Vim来编辑源代码,但我也希望在 vim的窗口中嵌入一个终端(就像在Kate中一样,你知道). 现在我已经看到了将vim缓冲区转换为交互式终端的vimsh插件,但我不喜欢它的两件事: 它在启动时自动打开.我可以随时禁用它并使用特殊命令调用终端吗? 它将窗口[详细]
-
x86 – Linux / SMP自旋锁不必要地慢吗?
所属栏目:[Linux] 日期:2020-12-27 热度:117
在阅读了解 Linux内核(Bovet Cesati)之后,关于内核同步的章节指出自旋锁获取代码归结为: 1: lock: btsl $0,slp jnc 32: testb $1,slp jne 2 jmp 13: 现在我原本以为嵌套循环似乎很浪费你可以实现类似的东西: 1: lock: btsl $0,slp jc 1 这会简单得多.但[详细]
-
linux – 从串口读取失败
所属栏目:[Linux] 日期:2020-12-26 热度:160
我有以下C程序: #include fcntl.h#include termios.h#include stdio.hint main(){ int fd = open("/dev/ttyS0",O_RDWR | O_NOCTTY | O_NONBLOCK); if(fd 0) { perror("Could not open device"); } printf("Device openedn"); struct termios options; tc[详细]
-
linux – 我的进程如何检测计算机是否正在关闭?
所属栏目:[Linux] 日期:2020-12-26 热度:164
我正在EC2现场实例上运行一些应用程序.这些情况可能会被亚马逊杀死,恕不另行通知. 在关闭过程中,进程按某种顺序被终止.我们有监控/恢复程序,根据服务器是关闭还是进程崩溃,应该采取不同的行为. (具体来说,如果服务器实际关闭,我们不想做任何事情) 如何在恢[详细]
-
linux – wxWidgets链接问题
所属栏目:[Linux] 日期:2020-12-26 热度:122
我按照此页面的说明安装了wxWidgets-2.8.10: http://wiki.wxwidgets.org/Compiling_and_getting_started 库目录: alex@alex-linux:/usr/local/lib$ls | grep wxlibwx_base-2.8.alibwx_base_net-2.8.alibwx_base_xml-2.8.alibwx_gtk2_adv-2.8.alibwx_gtk2[详细]
-
linux – 有没有人知道是否有人集成了libsegfault.so和gdbserver
所属栏目:[Linux] 日期:2020-12-26 热度:174
它在 http://sourceware.org/ml/gdb/2007-06/msg00360.html之前提到过. 但似乎没有人真正实现过这种想法. 实现这个有什么障碍吗? 我的要求如下: 能够插入任何精灵二进制可执行文件(例如,使用LD_PRELOAD) 二进制文件可能是多线程可执行文件 二进制文件可[详细]
-
linux – 无法从外部机器访问公开暴露的Docker容器端口,只能从lo
所属栏目:[Linux] 日期:2020-12-26 热度:145
我在我的Ubuntu Linux 14.04计算机上运行了一个Docker容器,公开了一个端口: docker run --name spacyapi -d -p 127.0.0.1:7091:7091 jgontrum/spacyapi:en 我可以连接并执行容器中服务器的命令,而不会出现本地机器的问题.例如: curl http://localhost:70[详细]
-
linux – EXT4上的时间戳精度(亚毫秒)
所属栏目:[Linux] 日期:2020-12-26 热度:114
我在Vala中编写了一些代码,我首先得到系统时间,然后创建一个文件,然后检索该文件的时间戳.时间戳总是早于系统时间,大约在500到1500微秒之间,这是没有意义的. 然后我写了一个简单的shell脚本: while true; dotouch ~/tmp/fred.txtstat ~/tmp/fred.txt|grep[详细]
-
如何在Linux centos上安装SWIG
所属栏目:[Linux] 日期:2020-12-26 热度:89
我想在我的 Linux服务器上安装SWIG来测试一些东西. 怎么可以安装 解决方法 你有几个选择.最简单的方法是在CentOS存储库中检查二进制包. sudo yum install swig 或者,你可以从http://www.swig.org/download.html下载SWIG,解压缩它,./ configure,make,sudo m[详细]
-
终端 – oh-my-zsh:git达到最大嵌套功能级别
所属栏目:[Linux] 日期:2020-12-26 热度:154
使用标准git命令时出错: [~/site]$git branchgit:1: maximum nested function level reached .zshrc: plugins=(git osx colored-man gem brew go bundler rake rails)source $ZSH/oh-my-zsh.sh 解决方法 我的错误,我将bash函数移动到zsh: gr() { git re[详细]
-
linux-kernel – 如何在Linux内核模块中分配可执行页面?
所属栏目:[Linux] 日期:2020-12-26 热度:174
我正在编写一个 Linux内核模块,我想分配一个可执行页面.普通的kmalloc在非可执行页面中返回一个指针,在那里执行代码时会出现内核恐慌.它必须适用于Ubuntu Karmic x86,2.6.31-20-generic-pae. 解决方法 #include linux/vmalloc.h#include asm/pgtype_types.[详细]
-
linux – 用特殊字符sed
所属栏目:[Linux] 日期:2020-12-26 热度:71
我有这条线,我想用sed: -- ASD = $start ( *.cpp ) -- 其中$start不是可变的,我想在它上面使用sed并用以下代码替换所有这一行: ASD = $dsadad ( .cpp ) 如何让sed忽略特殊的charactars,我尝试在特殊字符之前添加斜杠,但也许我弄错了,有人能给我一个例子[详细]
-
linux – 内核模块中的EXPORT_SYMBOL | insmod期间未定义的符号
所属栏目:[Linux] 日期:2020-12-26 热度:185
我从a.ko(内核模块)导出函数foo()和foo1(),foo1()接受输入参数,一个函数指针. 我从b.ko调用foo1(),并传递foo()作为输入参数. 我看到b.ko(未知符号foo)的insmod失败,即使a.ko已经在b.ko之前被破坏了. 任何解释/解决方案? 谢谢, 幸运 解决方法 有两种方法可[详细]
-
如何使用xlib监听Linux上的屏幕分辨率更改
所属栏目:[Linux] 日期:2020-12-26 热度:140
我正在写一个小的本地例程来通知另一个进程用户已经改变了屏幕分辨率.我尝试使用gtk但它在非复合窗口管理器上不稳定并经常崩溃.我正在研究xlib并有一个示例工作,当生成的X Window的大小发生变化时通知我,但我无法弄清楚如何通知屏幕分辨率已经改变.任何帮[详细]
-
linux – 陷阱标志(TF)和监视器陷阱标志之间的区别?
所属栏目:[Linux] 日期:2020-12-26 热度:147
像GDB这样的调试功能通过设置eflags寄存器的TF标志来工作,这会在处理器每次执行指令后导致异常,让gdb等工具控制调试.当我们运行虚拟机时,如果是kvm则执行同样你需要设置一个名为MONITOR TRAP FLAG的标志(当前英特尔软件手册3c第15页),这将导致虚拟macine在[详细]
-
linux – svn导出除了一些目录以外的所有目录
所属栏目:[Linux] 日期:2020-12-26 热度:157
我正在将repo的svn导出到临时位置,然后在将代码库复制到部署目录之前删除一些目录. 有没有办法在“导出”命令期间“排除”目录列表? 这样做的原因是导出更快(不需要获取我在此部署中删除的东西)尾部,因此部署脚本更快. 解决方法 您可以使用稀疏目录排除的[详细]
-
linux-kernel – in_irq()可靠吗?
所属栏目:[Linux] 日期:2020-12-26 热度:157
Unreliable Guide To Hacking The Linux Kernel表示 You can tell you are in a hardware interrupt,because in_irq() returns true. Caution. Beware that this will return a false positive if interrupts are disabled (see below). 是不是in_irq()可[详细]
-
使用Linux上的C访问Sony Playstation SixAxis Controller
所属栏目:[Linux] 日期:2020-12-26 热度:79
我在 Linux上用C编码(特别是Ubuntu 12.04),并希望使用PlayStation SixAxis控制器(PS3附带的类型)作为输入设备,理想情况下通过蓝牙. 我的申请将无头.目标平台上没有运行窗口管理器.目标是运行Ubuntu Server 12.04的small robot,尽管我正在桌面上进行开发.[详细]
-
linux-kernel – 对于共享中断行,如何找到要使用的中断处理程序
所属栏目:[Linux] 日期:2020-12-26 热度:50
对于共享中断线,我可以有几个中断处理程序.内核将按顺序调用该特定共享行的所有处理程序. 据我所知,每个处理程序在被调用时都会通知内核它是否是要调用的正确处理程序. 我的问题是如何确定,有没有办法检查一个内存映射寄存器,告诉特定设备的状态或是否有其[详细]
-
如何捕获IP数据包,更改其内容并在Linux上重新发送?
所属栏目:[Linux] 日期:2020-12-26 热度:105
我的问题是: 如何从网络接口捕获传入的IP数据包,更改其内容并从另一个网络接口重新发送? 解决方法 选择是你的,没有偏好(因此没有“正常”). 使用libnetfilter_queue传递给用户空间并在那里进行大量修改.或xtables模块,也可以工作(因为它无论如何都被NF调[详细]
-
并发性 – 特定场景的最佳Linux内核锁定机制是什么
所属栏目:[Linux] 日期:2020-12-26 热度:133
我需要为这种情况解决锁定问题: 多CPU系统. 所有CPU都使用通用(软件)资源. 只读访问资源非常常见. (传入网络数据包的处理) 写访问频率低得多. (仅限配置更改). 目前我使用read_lock_bh,write_lock_bh(自旋锁)机制. 问题是CPU越多,我在编写器上下文中获得[详细]
-
linux开启新端口
所属栏目:[Linux] 日期:2020-12-26 热度:190
1.使用vi或者vim打开iptables配置文件; vi /etc/sysconfig/iptables 2.在编辑页面新增加信任端口; -A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT 3.修改完成保存并从其网卡服务; service iptables restart 4.查看当前端口开放信[详细]