Questions tagged [assembly]

Tag for questions regarding the wide family of assembly languages both low and high level. It should be used for both the languages themselves as well as their assemblers.

Filter by
Sorted by
Tagged with
0
votes
0answers
30 views

How to disassemble floppy disk?

I want to disassemble floppy disk and assemble it again with nasm -f bin command. For example, I want to disassemble MS-DOS .img files and assemble it again with nasm -f bin command. I tried to use ...
0
votes
0answers
5 views

Setting a breakpoint at a specific DYNAMIC instruction using the GDB

Using GDB, it is straightforward to debug and monitor a target program by setting a break-point at a specific instruction, since the instruction addresses are known. However, we have two concepts, ...
0
votes
0answers
4 views

ERROR: Virtual Raspbian on Qemu in Ubuntu

I am trying to emulate Raspberry-pi/Raspbian with QEMU on my linux subsystem. I followed this link and did the following steps $ mkdir ~/qemu_vms/ Download/copy Raspbian Wheezy to ~/qemu_vms/ Download ...
1
vote
1answer
62 views

How do I run shellcode on Linux kernel 5.8+?

The assembly code I'm trying to run is simply a syscall 60. # exit.s .intel_syntax noprefix .section .text .globl _start _start: xor rax, rax mov al, 0x3c xor rdi, rdi xor rdi, 1 syscall ...
0
votes
0answers
95 views

gcc makefile error: “No rule to make target …”

I'm trying to use GCC (Linux 64 bit) with a makefile to compile my project which is a driver. I am trying to mix assembly with my c project, cpu_check and entry are c files while cpuid_available is an ...
-6
votes
1answer
72 views

Does the existence of linker and loader not depend on operating systems such as Linux?

Does the existence of linker (for performing linking following compilation) and loader (for executing an executable file) not depend on operating systems such as Linux? (I had though of linker and ...
3
votes
1answer
40 views

How is overflow_stack variable included in entry.S in arm64 architecture?

The overflow_stack variable is used in the kernel_ventry macro in arch/arm64/kernel/entry.S /* Switch to the overflow stack */ adr_this_cpu sp, overflow_stack + OVERFLOW_STACK_SIZE, x0 It ...
3
votes
1answer
235 views

How to disassembly multiple functions using Linux utility objdump?

After a program is compiled and the binary file is generated, we can use objdump to disassemble the binary file and extract the assembly code and a lot of information. However, using -j .text with ...
1
vote
1answer
185 views

How can we perform an arithmetic operation on a register using GDB? [closed]

I want to inject a bit-flip fault into a running program. For this purpose, I'm using gdb to insert a breakpoint into the target program and then flipping a single bit in a random-selected register. ...
0
votes
1answer
43 views

Red hat vs Ubuntu compile and assembly Problem(Book reference)

Can you recommend me OS mentioned in Shellcoder's Handbook because I'm having frequent issues on running ELF files mentioned there(See the errors below). I know that to overcome those error I have to ...
64
votes
11answers
275k views

How to view a binary file?

From what I understand, a compiler makes a binary file that consists of 1's and 0's that a CPU can read. I have a binary file but how do I open it to see the 1's and 0's that are there? A text editor ...
2
votes
1answer
984 views

-bash: ./ex1: cannot execute binary file: Exec format error (on Ubuntu installed through Windows 10 app store, 64 bit)

I am trying to start out with some assembly but I run into this error from the outset. Here are the details: I've written the file myself (following a video) so its not some import: global _start ...
2
votes
3answers
6k views

Any x86-64 Linux assembler?

I want to start learning assembly language, but all the googling didn't make any sense. I got some Exec format error and even used wine which is not good for understanding. So I wonder if anyone can ...
2
votes
3answers
411 views

Why is an executable called a “text file”?

In the course of updating software today I got the error "Text file busy", which got me wondering: Why is a Unix (or Linux) executable called a "text" file when that seems so counterintuitive and ...
2
votes
1answer
86 views

Is it safe to use the .bss section as a static stack?

(This is in the context of x86-64 Linux.) I am trying to write a high-reliability userland executable, and I have total control over the generated assembly. I don't want to rely on automatic stack ...
1
vote
0answers
93 views

How to export kernel functions which written in assembly?

I am working with a PowerPC processor and have to use dcache functions in my kernel module, like: "clean_dcache_range()", implemented in $KERNEL_SOURCE/arch/powerpc/kernel/misc_32.S (version 4.1.8). ...
6
votes
1answer
252 views

How to understand this TMG's assembly code from the Version 6 Unix?

Early versions of Unix included Doug McIlroy's tool tmg ("transmogrifier"), an early compiler-compiler. TMG was implemented in Dennis Ritchie's assembly language as well as in TMGL itself (the ...
1
vote
1answer
123 views

What software that I run uses AVX (or a specific assembly instruction)?

Let's say I want to find any libraries that use AVX, or the VZEROALL instruction? How could I go about doing that? I don't care if the AVX was hand written or compiled, I'll look that up later. I'm ...
0
votes
1answer
466 views

How is the Linux kernel partially written in assembly when system calls are required? [closed]

Does the kernel just not use system calls, or is the assembly being assembled before being on a new system? I might need some more info on assemblers, but I'm just confused that if instructions such ...
2
votes
1answer
46 views

What the branch machine op-code means (X86 architecture)?

I have a simple c code which is compiled and then the text code extracted using objdump utility. here is the dump file (A piece of dumped file): 0804841b <main>: 804841b: 8d 4c 24 04 ...
2
votes
1answer
322 views

How to build and run the GNU GAS assembler test suite?

I'm at Binutils tag binutils-2_31, and there is a directory: gas/testsuite with some tests that I'm interested in. I've compiled the entire binutils with: ./configure make but the directory gas/...
16
votes
1answer
6k views

Why can the kernel not use SSE/AVX registers and instructions?

This post from StackOverflow has this, In some environments there there is a restriction on certain instructions or using certain registers. For example, in the Linux kernel, use of SSE/AVX or FP ...
1
vote
1answer
308 views

What does SYSENTER do in 64-bit Long mode on Linux?

There is an x86 instruction sysenter. This seems to be the Intel fast-system-call method. SYSENTER seems to be valid in LONG mode (64-bit) on Intel processors. This seems to have fallen out of favor ...
0
votes
1answer
1k views

Running a custom-compiled executable returns “No such file or directory”

I have an executable but when I run it I get "No such file or directory" $ chmod a+x bin $ file bin bin: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib/...
2
votes
1answer
4k views

Compile shared library from asm code with current sources

I just did some basic functions in asm that I compile in a shared library. Like : BITS 64 global foo section .text foo: mov rax, 1 ret I compiled with ...
0
votes
1answer
301 views

Does GCC generate Bit Tests (x86 BT)?

Seaching through the GCC source, I see things like X86_TUNE_USE_BT TARGET_USE_BT My goal is to get an answer for myself whether or not GCC generates BT, BTS, BTR, and BTC. I started with BT and I ...
1
vote
1answer
647 views

Obtaining a code dump from a binary

Is it possible to dump the assembly language code of a binary using GDB? I tried to use the "l" command but it says No symbol table is loaded. Use the "file" command.. I use the file command and it ...
2
votes
1answer
56 views

Issues with cross-compiling and “as”?

I'm trying to compile source for a utility for an ARM system (host machine: x86_64, Debian, uname -v reports version as "Debian 4.9.110-3+deb9u1") but when it tries to pack the file into a final ...
1
vote
1answer
115 views

Where is start symbol in cat executable?

In my Ubuntu 18.04, when I disassemble /bin/cat or the one in coreutils using IDA Pro there exists "start" symbol, usually found with name "_start" in other programs such as gimp. However, when I use ...
3
votes
1answer
1k views

What do you call the calling convention behind `int 0x80`?

I know there is a syscall convention but what do you call the calling convention that precedes it that you see when you call to int 80 rather than syscall, like this. mov rax,4 ; system call ...
12
votes
1answer
23k views

How do I cross-compile Chromium for ARM?

Goal I need to install Chromium on FriendlyARM mini210s running Linux 3.0.8 armv7l Environment Vagrant box with Ubuntu Precise64 Installed depot_tools following these guidelines Get-the-code and ...
1
vote
1answer
748 views

Kernel initialization in UEFI mode

When using old legacy BIOS (consider X86 architecture), the boot loader jumps to a location at the real mode kernel (offset 512 which is defined in header.S assembly file) and starts the real mode ...
-1
votes
1answer
490 views

How does the processor determine each instruction's opcode and operands: looking into binary file with VIM [closed]

I run the command view /bin/ls on FreeBSD 10.3 and I can see the binary file unmodified: Then on vim/view I run the command :%!xxd and I can see the file in hex format as follows. I notice at the ...
3
votes
2answers
3k views

Moving compiled assembly code to the boot sector of a USB device

I have written a simple operating system and I am trying to test it. I have VirtualBox installed and an eight GB flash drive, so I thought I would just use those. I am not sure how to make the USB ...
4
votes
1answer
258 views

What is not accessible from userspace?

I read somewhere (3.1.3) that there's a high ring (supervisor mode) and a low ring (user mode) and that some "things" can be run only from the highest ring. What do they mean by "things"? I'd guess ...
0
votes
1answer
95 views

Where is RAX-ARGOFFSET defined?

In Linux 3.16, in asm/x86/kernel/entry_64.S, the following line references RAX-ARGOFFSET (also see [src]): 424 movq %rax,RAX-ARGOFFSET(%rsp) But I can not find where RAX-ARGOFFSET is defined ...
1
vote
1answer
3k views

Fatal error: No compiled in support for x86_64

Can't use gcc on x64 debian: $ gcc a.cpp Assembler messages: Fatal error: No compiled in support for x86_64 what should I do? Some people propose installing binutils, but they are already there. (...
2
votes
1answer
567 views

Can't build QTAV for cubieboard2 on Cubian

I’m trying to make QTAV lib for cubieboard2 environment and experiencing problems. Could you please help. Here is what qmake says: cubie@Cubian:~/QtAV/output$ qmake ../QtAV.pro Project MESSAGE: ...
2
votes
1answer
678 views

CLFS for ARMv7 neon

I am following CLFS book (GIT-20140613-arm version), and I have a issue when building GCC with armv7 and neon combination. Target info here. My host is a clean Debian 8 with gawk, build-essential, ...
2
votes
1answer
908 views

Problem in Cross compiling TinyCC with CodeSourcery

I am trying to cross compiling homas Preud'homme's version of TinyCC by using following command ./configure --cc=arm-none-linux-gnueabi-gcc --prefix=/home/shushant/tinycc/tc and it shows following ...
3
votes
1answer
2k views

Can't compile glibc for 64 bit system

I'm trying to compile glibc-2.16 statically for x64 system, ../configure --enable-kernel=2.6.9 --prefix=/run/shm/libc-static-64 --enable-static --enable-shared --host=i486-linux-gnu --build=i486-...
0
votes
0answers
945 views

Resume from Suspend/Hibernate issues

I have a peculiar problem while trying to resume from both suspend and hibernate. I believe the problem to be within the kernel itself since I have tried different distros (Ubuntu, Suse, Mageia) on ...
1
vote
1answer
478 views

Linux kernel 3.2 syscalls [closed]

Just trying to get the assembler instructions for <__execve> of the code below because i want to build the shell spawn opcode list: #include <stdio.h> int main() { char *happy[2]; ...
0
votes
4answers
2k views

causing a reboot from user space

This program , written for Gnu Assembler on an x86 linux system is supposed to cause a triple fault and then reboot. .text .global _start _start: # write our string to stdout movl $len,%edx ...
2
votes
1answer
185 views

Is there a reference for the assembler-like output produced by `awk -W dump`?

The command awk -W dump ... produces a dump of "assembler-like" code (as shown here [link], or by reading the man). Some of the instructions are easy to guess at their meaning such as jz, which is ...
2
votes
1answer
606 views

Z80 CPU cross-assembler for the MSX standard

I'm trying to program for the old eighties MSX standard that used a Z80 CPU. My problem is that I can't seem to find a cross-assembler for this CPU using the MSX standard. Is there any Z80 CPU MSX ...
10
votes
2answers
6k views

How do I debug a kernel module in which a NULL pointer appears?

I have a custom kernel module that I compiled from this patch that adds support for the logitech G19 keyboard among other G series devices. I compiled it just fine against Ubuntu's maverick kernel's ...
1
vote
2answers
1k views

Running the linux kernel and Ubuntu on custom processor

This is hardly a theoretical question as many have done this, albeit there's very little information on the underlying processes. I'm developing a custom MIPS-based processor on which I would like to ...
7
votes
1answer
2k views

Unable to run an executable built with NASM

I am attempting to assemble the assembly source file below using the following NASM command: nasm -f elf -o test.o test.asm This completes without errors and I then try to link an executable with ld:...
0
votes
1answer
8k views

Permission denied when I try to run a program assembled with the GNU assembler

I was testing the GNU assembler using intermediate code generated by gcc. I don't really understand the GNU assembly syntax at all, though I could learn it at some point. I ran the command as hello....