linux简单之美(一)
Linux 简单 之美
2023-09-14 08:56:51 时间
话说windows也有syscall,这是必须的。但是win的syscall可以直接call吗?可以是
可以但是破费周折,搞成SDT之类的复杂概念。下面看看linux是如何做的吧。
section .data msg db "hello hopy!",0x0a section .text global _start _start: mov eax,4 mov ebx,1 mov ecx,msg mov edx,12 int 0x80 mov eax,1 mov ebx,0 int 0x80
关键是系统调用号要知道,开始找的是usr/include/asm-gen*/unistd.h,
可是都不对。后来找的是usr/include/x86_64_linux_gnu/asm/下的头文件,
有2个,分别对应x86和x64.、编译连接指令如下:
nasm -f elf main.asm
ld main.o
运行,段转储错误鸟,查了一下,本猫用的是x64位的linux,所以要生成
x64位的程序,或者指明是x86的程序,我选择后者:
ld -m elf_i386 -o main main.o
哦鸟!
相关文章
- 提示:Linux空间不足啦(linux提示空间不足)
- Linux 的退出之旅:终止命令的崛起(linux退出界面)
- Linux清理缓存:快速、简单、轻松!(linux删除缓存文件)
- Linux下修改文件夹名的简单操作(linux修改文件夹名)
- Linux无法启动:问题排查指南(linux无法启动)
- 的操作Linux进入界面的简单操作(linux进去界面)
- 让Linux带你玩转斗地主(linux斗地主)
- 强大的安卓:基于Linux内核(安卓内核linux)
- 精通Linux 逻辑卷管理:一步一个脚印(linux逻辑卷管理)
- Linux 刻录到光盘的简单操作(linux刻盘)
- 特点Linux系统:稳定性的杰出表现(linux稳定的)
- Linux中简单行数统计命令妙用(linux行数统计命令)
- Linux下杀死线程的简单方法(linux杀死线程)
- 查看Linux系统的位数(linux查询系统位数)
- 为Linux批量重命名的简单方法(批量重命名linux)
- 一篇简单易懂的 Linux 列提取入门教程(linux列提取)
- Linux自动同步时间:简单命令即可完成(linux自动同步时间命令)
- Linux名称修改:一步一步简单改变(修改linux名称)
- Linux远程控制软件:简单易用的实现方式(linux 远程控制软件)
- Linux系统权限设置详解(linux的权限设置方法)
- 使用Linux快速完成批量主机名修改(linux批量修改主机名)