wjy + x86   21

SerenityOS/serenity: Serenity Operating System
Graphical Unix-like operating system for x86 computers.
unix  opensource  os  operatingsystem  x86 
may 2019 by wjy
x86 Assembly - Wikibooks, open books for an open world
This book covers assembly language programming for the x86 family of microprocessors. The objective is to teach how to program in x86 assembly, as well as the history and basic architecture of x86 processor family.

When referring to x86 we address the complete range of x86-based processors (since the original Intel 8086 in 1978). This includes:

IA-32 assembly, also commonly referred to as x86-32 assembly (Intel architecture 32-bit, since the Intel 80386), a 32-bit extension of the original 16-bit Intel x86 processor architecture (used in Intel 8086 - 80286 CPUs). IA-32 has full backwards compatibility with the 16-bit x86.
x86-64, also called the AMD64 or AMD 64-bit extension, backwards compatible with 32-bit code without performance loss.
Intel 64, previously named IA-32e or EM64T, almost identical to x86-64.
Throughout the book these terms may be used interchangeably when appropriate. A special notice will be given when covering 16-bit, 32-bit or 64-bit architectures and on any limitations to limit confusion.
x86  asm  assembly  reference  book  wikibook 
november 2017 by wjy
Guide to x86 Assembly
This guide describes the basics of 32-bit x86 assembly language programming, covering a small but useful subset of the available instructions and assembler directives. There are several different assembly languages for generating x86 machine code. The one we will use in CS216 is the Microsoft Macro Assembler (MASM) assembler. MASM uses the standard Intel syntax for writing x86 assembly code.

The full x86 instruction set is large and complex (Intel's x86 instruction set manuals comprise over 2900 pages), and we do not cover it all in this guide. For example, there is a 16-bit subset of the x86 instruction set. Using the 16-bit programming model can be quite complex. It has a segmented memory model, more restrictions on register usage, and so on. In this guide, we will limit our attention to more modern aspects of x86 programming, and delve into the instruction set only in enough detail to get a basic feel for x86 programming.
x86  asm  assembly  programming  guide  course 
january 2017 by wjy
Intel XED
The X86 Encoder Decoder (XED), is a software library (and associated headers) for encoding and decoding X86 (IA32 and Intel64) instructions. The decoder takes sequences of 1-15 bytes along with machine mode information and produces a data structure describing the opcode, operands, and flags. The encoder takes a similar data structure and produces a sequence of 1 to 15 bytes. Disassembly is essentially a printing pass on the data structure.
compiler  x86  asm  assembly  software  library  intel  cpu 
december 2016 by wjy
Virtual x86
v86 emulates an x86-compatible CPU and hardware. Here's a list of emulated hardware: An x86 compatible CPU. The instruction set is around Pentium 1 level. Some features are missing, more specifically: Task gates, far calls in protected mode 16 bit protected mode features Single stepping MMX, SSE A bunch of FPU instructions Some exceptions A floating point unit (FPU). Calculations are done with JavaScript's double precision numbers (64 bit), so they are not as precise as calculations on a real FPU (80 bit). A floppy disk controller (8272A). An 8042 Keyboard Controller, PS2. With mouse support. An 8254 Programmable Interval Timer (PIT). An 8259 Programmable Interrupt Controller (PIC). A CMOS Real Time Clock (RTC). A VGA controller with SVGA support and Bochs VBE Extensions. A PCI bus. This one is partly incomplete and not used by every device. An IDE disk controller. An NE2000 (8390) PCI network card. A virtio filesystem.
windows  browser  windows98  x86  emulator 
february 2016 by wjy
Android-x86 - Porting Android to x86
This is a project to port Android open source project to x86 platform, formerly known as "patch hosting for android x86 support". The original plan is to host different patches for android x86 support from open source community. A few months after we created the project, we found out that we could do much more than just hosting patches. So we decide to create our code base to provide support on different x86 platforms, and set up a git server to host it.
android  x86  virtualbox 
august 2015 by wjy
xoreaxeaxeax/sinkhole · GitHub
An x86 design flaw allowing ring -2 privilege escalation. sinkhole.asm contains the proof of concept APIC overlay attack. Coming shortly: Loadable kernel module for deploying the ring -2 rootkit through the sinkhole (Benign) SMM rootkit sample (Currently working on the "benign" part)
x86  rootkit  exploits  asm 
august 2015 by wjy
x86 Disassembly - Wikibooks, open books for an open world
Ever wonder what the relationship was between the C programming language, Assembly Language, and machine code on the x86 family of microprocessors? Learn the art of disassembly and reverse engineering on the x86 platform with the x86 Disassembly wikibook!
assembly  x86  programming  asm  books  ebooks  wiki  disassembly 
april 2015 by wjy
dynasm - DynASM with Lua mode
This is a modified version of DynASM that allows generating, compiling, and running x86 and x86-64 assembly code directly from Lua. It also exposes the DynASM assembler and linker to be used as Lua modules.
dynasm  lua  x86  assembly  asm 
june 2014 by wjy
Piston X86-64 Assembler
World's first X86-64 (AMD64) Assembler working in web browser and Node.js
asm  compiler  javascript  x86  js  assembler 
april 2014 by wjy
x86_64 Assembly Language and Shellcoding on Linux
This course focuses on teaching the basics of 64-bit assembly language for the x86_64 family of processors on the Linux platform and applying it to Infosec. Once we are through with the basics, we will look at writing shellcode, encoders, decoders, crypters and other advanced low level applications.
resource  course  x86  x86_64  assembly  language  programming  linux  asm 
march 2014 by wjy

Copy this bookmark: