hellowolrd 的系统调用
brk(NULL) = 0x556f7f541000
arch_prctl(0x3001 /* ARCH_??? */, 0x7ffe81898010) = -1 EINVAL (Invalid argument)
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=36642, ...}, AT_EMPTY_PATH) = 0
mmap(NULL, 36642, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f3b5746e000
close(3) = 0
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\206\2\0\0\0\0\0"..., 832) = 832
pread64(3, "\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 784, 64) = 784
pread64(3, "\4\0\0\0 \0\0\0\5\0\0\0GNU\0\2\0\0\300\4\0\0\0\3\0\0\0\0\0\0\0"..., 48, 848) = 48
pread64(3, "\4\0\0\0\24\0\0\0\3\0\0\0GNU\0+H)\227\201T\214\233\304R\352\306\3379\220%"..., 68, 896) = 68
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=1983576, ...}, AT_EMPTY_PATH) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3b5746c000
pread64(3, "\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 784, 64) = 784
mmap(NULL, 2012056, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3b57280000
mmap(0x7f3b572a6000, 1486848, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x26000) = 0x7f3b572a6000
mmap(0x7f3b57411000, 311296, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x191000) = 0x7f3b57411000
mmap(0x7f3b5745d000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1dc000) = 0x7f3b5745d000
mmap(0x7f3b57463000, 33688, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f3b57463000
close(3) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3b5727e000
arch_prctl(ARCH_SET_FS, 0x7f3b5746d580) = 0
mprotect(0x7f3b5745d000, 12288, PROT_READ) = 0
mprotect(0x556f7e9a9000, 4096, PROT_READ) = 0
mprotect(0x7f3b574a9000, 8192, PROT_READ) = 0
munmap(0x7f3b5746e000, 36642) = 0
newfstatat(1, "", {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0), ...}, AT_EMPTY_PATH) = 0
brk(NULL) = 0x556f7f541000
brk(0x556f7f562000) = 0x556f7f562000
write(1, "hello world\n", 12hello world
) = 12
exit_group(0) = ?
+++ exited with 0 +++
hellowolrd 的系统调用相关推荐
- 实验四:使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用
贺邦+原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 实验目的: 使用库函数 ...
- 专题8-Linux系统调用
1.从用户空间到内核空间的时候需要进行系统调用 2.系统调用通过swi指令实现,这个时候会有一个参数,存放到r7寄存器,用来指定要调用的内核态函数. 3.一般内核态的实际函数可以再任意的.c文件实现, ...
- linux c 启动程序吗,Linux下C程序启动时的系统调用
写程序跟踪发现,在Linux i386中,一个程序体完全为空的C语言程序启动时要进行近100个系统调用,如下所示. [ 1]syscall: 11 //execve [ 2]syscall: 45 / ...
- linux open系统调用的O_DIRECT标记
前言 open系统调用中针对打开的文件描述符,可以增加一个O_DIRECT标记,该标记能够使得针对该文件描述符的写操作绕过操作系统page cache,直接进入通用块设备层,从而减少页缓存对IO效率的 ...
- linux系统调用 ftruncate设置文件大小
系统调用ftruncate可以将一个文件裁剪为指定的大小,函数描述如下: 头文件:<unistd.h> <sys/types.h> 函数使用: int truncate(con ...
- linux 系统调用 read,write和lseek 使用
read系统调用 头文件 #include <unistd.h> 函数使用 ssize_t read(int fd, void *buf, size_t count) read 函数会从文 ...
- linux 系统调用 open函数使用
函数介绍 本文仅仅将open系统调用的使用简单总结一下,关于其实现原理大批的大佬分享可以自行学习.open系统调用主要用于打开或者创建一个文件,并返回文件描述符. 头文件 #include <f ...
- 汇编语言调用Linux系统调用
首先查找系统调用文件 #find / -name unistd.h /root/linux/include/unistd.h /usr/include/linux/unistd.h /usr/incl ...
- 程序员的自我修养--链接、装载与库笔记:系统调用与API
系统调用(System Call)是应用程序(运行库也是应用程序的一部分)与操作系统内核之间的接口,它决定了应用程序是如何与内核打交道的.无论程序是直接进行系统调用,还是通过运行库,最终还是会到达系统 ...
最新文章
- java 注解开发_Java中的注解到底是如何工作的?
- Grails 复用查询条件并分页
- oracle 中时间类型 date 与 long 互转
- 华为p4用鸿蒙系统吗_华为p40pro是鸿蒙系统吗
- XML数据读取方式性能比较(一) (转)
- Mike Stout关于BOSS战的分享
- map函数的用法python,详解Python map函数及Python map()函数的用法
- 多线程下单例模式:懒加载(延迟加载)和即时加载
- 修改Android Studio默认的gradle配置文件
- 【版本控制】Github for Windows客户端的使用
- png变成矢量图_ps中如何在将图转换成矢量图
- java毕业设计商品货物信息管理系统源码+lw文档+mybatis+系统+mysql数据库+调试
- 管理经济学【六】之 成本分析
- 广播电视相关信息系统 安全等级保护基本要求
- 大学生课程设计 ------ Java Web课程设计(学生成绩管理系统03)
- 【论文翻译|2021】A survey on heterogeneous network representation learning 异构网络表示学习综述
- PHP笔记03-数组1
- 鸿蒙车载系统丰田,华为公布三大鸿蒙车载操作系统
- 每日三省吾身- 持续改进-持续集成
- 编码方法论:设计数据结构