ICode9

精准搜索请尝试: 精确搜索
  • linux – 系统调用号→运行时的名称映射2019-08-13 01:52:08

    有没有办法解决观察到的系统调用的数量: SYS_345(0xe, 0xbff94188, 0x2, 0x4000, 0xb6526000) = 2 在没有查找的情况下运行内核中的符号名称在消息来源中? 编辑用例是一个过时的strace二进制文件外核盒,其内核源代码可能很难检索.解决方法:据我所知,没有保证确定从正在运行的内核中

  • 如何将Wing IDE的进程名称从python更改为更具描述性的名称2019-08-10 14:05:16

    在我的Ubuntu下的进程列表中(使用top / System Monitor),最大的内存(200 Mb)之一是python.我搜索了一下我的程序之一,直到我意识到这是我的Python IDE(Wing),它本身是用Python编写的. 我以为我可以通过插入setproctitle包中的setproctitle来更改程序的名称,但Wing正在使用的python

  • Linux中的库调用和系统调用有什么区别?2019-08-09 10:53:28

    我想知道在Linux中库调用和系统调用之间有什么区别.任何能够很好地理解两者背后概念的指针都将不胜感激.解决方法:“库调用”并不是真正的事情.您可以调用链接到共享库的函数.这只意味着在运行时查找库路径以确定要调用的函数的位置. 系统调用是内核处理的低级内核调用.

  • linux – 关闭后绑定不可用的TCP本地套接字地址有多长?2019-08-09 09:51:43

    在Linux上(我的实时服务器在RHEL 5.5上 – 下面的LXR链接是内核版本),man 7 ip说: A TCP local socket address that has been bound is unavailable for some time after closing, unless the SO_REUSEADDR flag has been set. 我没有使用SO_REUSEADDR. “一段时间”多久了?我怎

  • linux – 系统调用“tuxcall”做了什么?2019-08-08 15:52:11

    在include / x86_64-linux-gnu / asm / unistd_64.h中,我看到一个名为tuxcall的系统调用, #define __NR_tuxcall 184 除了说它是一个未实现的系统调用之外,在man tuxcall中没有任何关于它的内容.它做了什么?是从未实施过,还是在古代做过什么?解决方法:tuxcall是the tux system call

  • 如何使用ftrace跟踪系统调用事件而不显示Linux内核中的任何其他函数?2019-07-31 03:00:47

    例如,要监控所有mkdir调用,我能想到的最好的是: #!/bin/sh set -eux d=debug/tracing mkdir -p debug if ! mountpoint -q debug; then mount -t debugfs nodev debug fi # Stop tracing. echo 0 > "${d}/tracing_on" # Clear previous traces. echo > "${d}/trace&

  • 为什么mkdir()和rmdir()POSIX系统调用不同的头文件?2019-07-31 03:00:28

    mkdir()位于< sys / stat.h>中而rmdir()在< unistd.h>中.将它们放在同一个头文件中会不会更有意义?解决方法:原因是,使用mkdir(2)在第二个参数中指定权限: int mkdir(const char *pathname, mode_t mode); 这些模式标志和类型mode_t在sys / stat.h中定义(至少间接地通过在我的系

  • c – 如何使用lseek读取文件的最后一个字符2019-07-30 08:08:00

    我正在尝试使用lseek以相反的顺序从文件中读取字符. 到目前为止,我有: int finished = 1; char temp[1]; while (finished > 0) { lseek(fileID,0,2); finished = read(fileID, &temp, 1); cout << temp[0]; } 但是read总是返回0. 关于该怎么做的任何想法?解决方

  • 在linux中没有超过6个参数的系统调用是真的吗?2019-07-30 05:50:47

    在unistd.h中有_syscall0~_syscall6: _syscall6(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4,type5,arg5,type6,arg6) 我的结论是对还是不对?解决方法:看起来该功能接受7个参数(0-6),但这个网页说6 从这里:http://www.win.tue.nl/~aeb/linux/lk/lk-4.html Earlier ver

  • c – 在C和Pascal中禁用system()和exec()函数2019-07-29 23:06:15

    有没有办法通过使用任何编译器参数或修改头/单元文件来禁用C/C++和Pascal中的system()和exec()函数? (这是一个Windows) 我已经尝试将-Dsystem = NONEXIST用于gcc和g但#include< cstdio>导致编译错误. 编辑:当然我知道他们可以使用#undef系统绕过防御,所以我试图在stdlib.h中注释掉系

  • Linux内核systemcall调用“int 0x80”2019-07-29 11:51:27

    我正在研究Linux内核,目前我尝试实现自己的系统调用. 在内核代码中,它看起来如下: asmlinkage long sys_my_syscall() { printk("My system call\n"); return 0; } 如果我用systemcall()函数调用它可以正常工作,但我找到了另一种方法: int my_syscall(void) { long

  • xml – /usr/share / gdb / syscalls用于什么2019-07-29 10:50:28

    我在/usr/share / gdb中找到了三个目录: > auto-load:用于自动加载的脚本; > python:这用于gdb python扩展;> syscalls:这包含几个xml文件,如amd64-linux.xml,我无法通过谷歌找到任何信息. BTW:我的操作系统是Fedora 13. 谁能告诉我这些xml文件用于什么?感谢致敬!解决方法:较新的GDB可以打

  • “Syscall param open(mode)在开放的sys调用中包含未初始化的字节”2019-07-29 00:51:59

    fd = open(pathname, O_WRONLY | O_LARGEFILE | O_APPEND | O_CREAT); 运行我的测试时遇到valgrind错误: ==14280== Syscall param open(mode) contains uninitialised byte(s) ==14280== at 0x4111084: open64 (open64.c:42) 并且open的返回值是-2 Errno被设置为13(权限被拒

  • Linux内核系统调用返回-1而不是{-1,-256}2019-07-28 21:01:10

    我是一个内核新手,面临着一个奇怪的问题.我编写了一个概念验证计算器系统调用,虽然它适用于大多数计算,但当SUBTRACTION结果介于-1到-256之间时它返回-1.如果有人可以对可能发生的事情有所了解,那就会很感激.下面是系统调用代码. SYSCALL_DEFINE3(calc, int, a, int, b , char, o

  • linux汇编:如何调用syscall?2019-07-28 19:00:28

    我想在汇编中调用一个系统调用.问题是我不能运行ecx,rsp. rsp是64位寄存器,ecx是32位寄存器.我想将缓冲区addr作为此系统调用的参数传递.我能做什么?谢谢. section .data s0: db "Largest basic function number supported:%s\n",0 s0len: equ $-s0 section .text global main e

  • 是否有可能实时监控linux下的所有系统调用?2019-07-25 23:01:40

    例如,在linux-machine中有很多进程. 每个人都可以使用系统调用,但通常很少使用.那么,有一种工具或方式可以显示何时使用系统调用以及哪个进程相关联?解决方法:您可以使用各种工具,如strace,ltrace和许多其他工具,但我不确定您是否希望同时跟踪所有进程. 通常,您会附加到一个感兴趣的

  • linux – 如何监控内核执行的系统调用次数?2019-07-23 14:51:56

    我需要监视Linux执行的系统调用量. 我知道vmstat能够为BSD和AIX系统显示它,但对于Linux它不能(根据手册页). / proc中有任何计数器吗?或者有没有其他方法来监控它?解决方法:我写了一个简单的SystemTap脚本(基于syscalls_by_pid.stp).它产生如下输出: ProcessName #SysCalls

  • linux – 如何检查给定shellcode执行的命令?2019-07-23 04:01:35

    可以说我给了以下shellcode: char shellcode[]= "\x31\xc0\x31\xdb\x31\xc9\x99\xb0\xa4\xcd\x80\x6a\x0b\x58\x51\x68" "\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x51\x89\xe2\x53\x89" "\xe1\xcd\x80"; 如

  • c – 没有sudo的SIGKILL init(PID = 1)? linux中的bug?2019-07-22 14:51:07

    我试图运行以下命令kill -9 1,它说bash:kill:(1) – 不允许操作. 对我来说很明显,你不应该在没有sudo的情况下发出init进程的信号. 但是在为c-shell编写代码时遇到了一个bug(我认为它确实存在).我编译了以下程序并运行它.现在它让我和我所有的操作系​​统概念混淆了. #include <sig

  • 如何通过静态分析找出二进制文件是否在Linux上使用某些系统调用?2019-07-18 07:50:43

    我需要找出一个二进制文件是否在Linux上使用epoll或select for socket处理.二进制文件没有被剥离,但我不能在我的linux框中运行它所以没有strace.解决方法:nm< binary>将告诉您哪些符号已定义,更重要的是,这些符号由给定的二进制文件使用.您可以通过检查输出中列出的poll或select中

  • 将数据从内核空间复制到用户空间2019-07-17 12:50:44

    我正在尝试进行自定义系统调用. 我的系统调用需要2个参数struct buffer ** mybuffer& int size. 它强加了** mybuffer发生的任何变化应该反映在用户空间中,但似乎它不起作用. 所以我在其他地方看到我可以使用copy_to_user(void * dest,void * src,int size)将数据从内核空间复制到

  • 回声到Linux控制台的价值2019-07-16 21:51:13

    我怎样才能在C中将一个值从系统调用输出到Linux控制台,以便在dmesg之后可见?我用什么方法打印?解决方法:你正在寻找printk()函数;有关它支持的类型的一些文档可以在Documentation / printk-formats.txt中找到.它在kernel / printk.c中定义.

  • 系统调用返回值和错误2019-07-16 17:51:59

    我在我的程序中使用以下系统调用: recvfrom sendto sendmsg 从上面提到的每个系统调用我检查它是否完成没有任何中断,如果它被中断,我重试. 例如: recvagain: len = recvfrom(fd, response, MSGSIZE, MSG_WAITALL, (struct sockaddr *)&from, &fromlen); if (errno =

  • linux – System.map文件中地址的含义2019-07-15 22:51:00

    这个地址指定了什么?这些内存加载到内存的地址?解决方法:内核从进程的虚拟地址空间中的固定位置开始. Linux内核通常[取决于您的系统架构]位于4GB虚拟地址空间的前1 GB中.因此,具有3G / 1G拆分的系统架构的内核从地址0xC0000000开始.根据平台的内存映射,这将映射到物理内存中的物理地

  • 是否有系统调用函数,其定义调用另一个系统调用函数?2019-07-15 05:50:43

    在Linux中,是否有一个系统调用函数,其定义调用另一个系统调用函数? 或者,在任何系统调用函数不调用另一个系统调用函数的意义上,所有系统调用函数是否彼此独占? 或者,在上述意义上,系统调用函数是否主要是彼此存在的? 谢谢.解决方法:好吧,对于每个系统调用,只生成一个陷阱,但有些调用

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有