* . *
  • About
  • Advertise
  • Privacy & Policy
  • Contact
Monday, August 18, 2025
Earth-News
  • Home
  • Business
  • Entertainment
    Terence Stamp: from arthouse icon to blockbuster villain – yahoo.com

    Terence Stamp: From Arthouse Legend to Hollywood’s Ultimate Villain

    Community & Entertainment redefined: The summer fun continues with Villagio Hospitality! – WJLA

    Summer Fun Redefined: Create Unforgettable Moments with Villagio Hospitality!

    Iconic ‘M*A*S*H’ Actor, 86, Has Fans Swooning Over Resurfaced Images: ‘My Crush Since ’75’ – yahoo.com

    Iconic ‘M*A*S*H’ Actor, 86, Has Fans Swooning Over Resurfaced Images: ‘My Crush Since ’75’ – yahoo.com

    ‘The Rainmaker’ Premiere: Milo Callaghan Breaks Down Rudy Baylor’s ‘Misguided Valor’ – The Laconia Daily Sun

    Inside ‘The Rainmaker’ Premiere: Milo Callaghan Uncovers the Real Story Behind Rudy Baylor’s Misguided Valor

    Suicide Squad Member Gets New Origin in Absolute Flash – yahoo.com

    Suicide Squad Member Unveiled with Exciting New Origin in Absolute Flash

    I’ll miss the chaos of ‘And Just like That…’ (and Che Diaz too) – yahoo.com

    Why I’ll Truly Miss the Wild Ride of ‘And Just Like That…’ (and Che Diaz!)

  • General
  • Health
  • News

    Cracking the Code: Why China’s Economic Challenges Aren’t Shaking Markets, Unlike America’s” – Bloomberg

    Trump’s Narrow Window to Spread the Truth About Harris

    Trump’s Narrow Window to Spread the Truth About Harris

    Israel-Gaza war live updates: Hamas leader Ismail Haniyeh assassinated in Iran, group says

    Israel-Gaza war live updates: Hamas leader Ismail Haniyeh assassinated in Iran, group says

    PAP Boss to Niger Delta Youths, Stay Away from the Protest

    PAP Boss to Niger Delta Youths, Stay Away from the Protest

    Court Restricts Protests In Lagos To Freedom, Peace Park

    Court Restricts Protests In Lagos To Freedom, Peace Park

    Fans React to Jazz Jennings’ Inspiring Weight Loss Journey

    Fans React to Jazz Jennings’ Inspiring Weight Loss Journey

    Trending Tags

    • Trump Inauguration
    • United Stated
    • White House
    • Market Stories
    • Election Results
  • Science
  • Sports
  • Technology
    Empyrean Technology’s revenue climbs, but profit plunges 92% in EDA spending squeeze – digitimes

    Empyrean Technology’s Revenue Skyrockets as Profits Plunge 92% Amid EDA Spending Crunch

    5G-A technology provides strong support for China’s football sensation Suchao – Global Times

    How 5G-A Technology is Revolutionizing China’s Football Star Suchao

    AI’s backyard: A map of the 21st-century gold rush – EL PAÍS English

    The AI Frontier: Exploring the Thrilling Gold Rush of the 21st Century

    Youxin Technology Ltd Faces Nasdaq Deficiency Notices Over Listing Compliance Issues

    Vermont famers say new technology is changing the state’s agriculture industry – News Channel 3-12

    Vermont Farmers Embrace New Technology Transforming the State’s Agriculture Industry

    Verb Technology Reports Revenue Growth Amidst Strategic Expansions – TipRanks

    Verb Technology Soars with Impressive Revenue Growth Driven by Strategic Expansions

    Trending Tags

    • Nintendo Switch
    • CES 2017
    • Playstation 4 Pro
    • Mark Zuckerberg
No Result
View All Result
  • Home
  • Business
  • Entertainment
    Terence Stamp: from arthouse icon to blockbuster villain – yahoo.com

    Terence Stamp: From Arthouse Legend to Hollywood’s Ultimate Villain

    Community & Entertainment redefined: The summer fun continues with Villagio Hospitality! – WJLA

    Summer Fun Redefined: Create Unforgettable Moments with Villagio Hospitality!

    Iconic ‘M*A*S*H’ Actor, 86, Has Fans Swooning Over Resurfaced Images: ‘My Crush Since ’75’ – yahoo.com

    Iconic ‘M*A*S*H’ Actor, 86, Has Fans Swooning Over Resurfaced Images: ‘My Crush Since ’75’ – yahoo.com

    ‘The Rainmaker’ Premiere: Milo Callaghan Breaks Down Rudy Baylor’s ‘Misguided Valor’ – The Laconia Daily Sun

    Inside ‘The Rainmaker’ Premiere: Milo Callaghan Uncovers the Real Story Behind Rudy Baylor’s Misguided Valor

    Suicide Squad Member Gets New Origin in Absolute Flash – yahoo.com

    Suicide Squad Member Unveiled with Exciting New Origin in Absolute Flash

    I’ll miss the chaos of ‘And Just like That…’ (and Che Diaz too) – yahoo.com

    Why I’ll Truly Miss the Wild Ride of ‘And Just Like That…’ (and Che Diaz!)

  • General
  • Health
  • News

    Cracking the Code: Why China’s Economic Challenges Aren’t Shaking Markets, Unlike America’s” – Bloomberg

    Trump’s Narrow Window to Spread the Truth About Harris

    Trump’s Narrow Window to Spread the Truth About Harris

    Israel-Gaza war live updates: Hamas leader Ismail Haniyeh assassinated in Iran, group says

    Israel-Gaza war live updates: Hamas leader Ismail Haniyeh assassinated in Iran, group says

    PAP Boss to Niger Delta Youths, Stay Away from the Protest

    PAP Boss to Niger Delta Youths, Stay Away from the Protest

    Court Restricts Protests In Lagos To Freedom, Peace Park

    Court Restricts Protests In Lagos To Freedom, Peace Park

    Fans React to Jazz Jennings’ Inspiring Weight Loss Journey

    Fans React to Jazz Jennings’ Inspiring Weight Loss Journey

    Trending Tags

    • Trump Inauguration
    • United Stated
    • White House
    • Market Stories
    • Election Results
  • Science
  • Sports
  • Technology
    Empyrean Technology’s revenue climbs, but profit plunges 92% in EDA spending squeeze – digitimes

    Empyrean Technology’s Revenue Skyrockets as Profits Plunge 92% Amid EDA Spending Crunch

    5G-A technology provides strong support for China’s football sensation Suchao – Global Times

    How 5G-A Technology is Revolutionizing China’s Football Star Suchao

    AI’s backyard: A map of the 21st-century gold rush – EL PAÍS English

    The AI Frontier: Exploring the Thrilling Gold Rush of the 21st Century

    Youxin Technology Ltd Faces Nasdaq Deficiency Notices Over Listing Compliance Issues

    Vermont famers say new technology is changing the state’s agriculture industry – News Channel 3-12

    Vermont Farmers Embrace New Technology Transforming the State’s Agriculture Industry

    Verb Technology Reports Revenue Growth Amidst Strategic Expansions – TipRanks

    Verb Technology Soars with Impressive Revenue Growth Driven by Strategic Expansions

    Trending Tags

    • Nintendo Switch
    • CES 2017
    • Playstation 4 Pro
    • Mark Zuckerberg
No Result
View All Result
Earth-News
No Result
View All Result
Home Technology

Bytecode VMs in Surprising Places

April 30, 2024
in Technology
Bytecode VMs in Surprising Places
Share on FacebookShare on Twitter

April 30, 2024

In response to a question on Twitter1, Richard Hipp wrote about why SQLite uses a bytecode VM for executing SQL statements.

Most people probably associate bytecode VMs with general-purpose programming languages, like JavaScript or Python. But sometimes they appear in surprising places! Here are a few that I know about.

eBPF

Did you know that inside the Linux kernel, there’s an extension mechanism that includes a bytecode interpreter and a JIT compiler?

I had no idea. Well, it’s called eBPF, and it’s pretty interesting: a register-based VM with ten general-purpose registers and over a hundred different opcodes.

The “BPF” in eBPF stands for Berkeley packet filter, and the basic idea is described in a 1993 USENIX paper:

Many versions of Unix provide facilities for user-level packet capture, making possible the use of general purpose workstations for network monitoring. Because network monitors run as user-level processes, packets must be copied across the kernel/user-space protection boundary. This copying can be minimized by deploying a kernel agent called a packet filter, which discards unwanted packets as early as possible. The original Unix packet filter was designed around a stack-based filter evaluator that performs sub-optimally on current RISC CPUs. The BSD Packet Filter (BPF) uses a new, register-based filter evaluator that is up to 20 times faster than the original design.

So it was originally designed for a pretty restricted use case: a directed, acyclic control flow graph representing a filter function for network packets. And for a long time, the Linux implementation was equally simple: two general-purpose registers, a switch-style interpreter, and no backwards branches.

A patch in 2011 added a JIT compiler for x86-64. In 2012, the first non-networking use case appeared. Then, in 2014, the BPF implementation was substantially extended on its way to becoming the universal in-kernel virtual machine:

It expands the set of available registers from two to ten, adds a number of instructions that closely match real hardware instructions, implements 64-bit registers, makes it possible for BPF programs to call a (rigidly controlled) set of kernel functions, and more. Internal BPF is more readily compiled into fast machine code and makes it easier to hook BPF into other subsystems.

DWARF expressions

DWARF is a file format used by compilers like GCC and LLVM to include debug information in compiled binaries. Say you’re trying to debug the following C++ code:

void add_two(int x)
{
int ans=x + 2;
return ans + 2; // Oops!
}

In a debugger, you might want to print the value of the ans variable. But depending on the compiler and the code, this could be surprisingly difficult! It could be in a register, on the stack, or it might have been optimized away (to name just a few possibilities).

The solution is allow the compiler to specify an expression that will compute the value of the local variable. So the DWARF spec includes an expression language:

2.5 DWARF Expressions

DWARF expressions describe how to compute a value or specify a location. They are expressed in terms of DWARF operations that operate on a stack of values.

A DWARF expression is encoded as a stream of operations, each consisting of an opcode followed by zero or more literal operands. The number of operands is implied by the opcode.

It’s up to the debugger to evaluate the expressions. GDB and LLDB both have a switch-based interpreter for DWARF expressions.2

GDB agent expressions

But it turns out that GDB has another bytecode interpreter!

Using GDB’s trace and collect commands, the user can specify locations in the program, and arbitrary expressions to evaluate when those locations are reached.

When GDB is debugging a remote target, the GDB agent code running on the target computes the values of the expressions itself. To avoid having a full symbolic expression evaluator on the agent, GDB translates expressions in the source language into a simpler bytecode language, and then sends the bytecode to the agent; the agent then executes the bytecode, and records the values for GDB to retrieve later.

The bytecode language is simple; there are forty-odd opcodes, the bulk of which are the usual vocabulary of C operands (addition, subtraction, shifts, and so on) and various sizes of literals and memory reference operations. The bytecode interpreter operates strictly on machine-level values — various sizes of integers and floating point numbers — and requires no information about types or symbols; thus, the interpreter’s internal data structures are simple, and each bytecode requires only a few native machine instructions to implement it. The interpreter is small, and strict limits on the memory and time required to evaluate an expression are easy to determine, making it suitable for use by the debugging agent in real-time applications.

(From Debugging with GDB, Appendix F: The GDB Agent Expression Mechanism)

WinRAR

WinRAR3 is a file compression utility for Windows with a proprietary file format. Tavis Ormandy, a vulnerability researcher at Google, discovered that the RAR format includes a bytecode encoding for data transformation:

Believe it or not, RAR files can contain bytecode for a simple x86-like virtual machine called the RarVM. This is designed to provide filters (preprocessors) to perform some reversible transformation on input data to increase redundancy, and thus improve compression.

His rarvmtools repo includes some details on the architecture:

Familiarity with x86 (and preferably intel assembly syntax) would be an advantage.

RarVM has 8 named registers, called r0 to r7. r7 is used as a stack pointer for stack related operations (such as push, call, pop, etc). However, as on x86, there are no restrictions on setting r7 to whatever you like, although if you do something stack related it will be masked to fit within the address space for the duration of that operation.

Some others:

The TrueType font specification includes a set of over 200 instructions used for glyph rendering and hinting.
PostScript is not only a page description language, but a relatively powerful stack-based programming language. PostScript files are plain text, so a PostScript renderer doesn’t necessarily use bytecode, but the spec also includes a binary encoding.

👉 Discuss on Hacker News.

>>> Read full article>>>
Copyright for syndicated content belongs to the linked Source : Hacker News – https://dubroy.com/blog/bytecode-vms-in-surprising-places/

Tags: Bytecodesurprisingtechnology
Previous Post

Show HN: I made a CLI tool to create web extensions with no build configuration

Next Post

Pyinfra: Automate Infrastructure Using Python

Comita named the Davis-Denkmann Professor of Tropical Forest Ecology – YaleNews

Comita Named Davis-Denkmann Professor of Tropical Forest Ecology

August 18, 2025
‘Science of matchmaking is a mix of algorithms and psychology’ – The Times of India

Unlocking Love: How Algorithms and Psychology Craft Perfect Matches

August 18, 2025
Wrexford & Sloane: Science, Secrets, and Society – Meridian Magazine

Wrexford & Sloane: Exploring the Hidden Worlds of Science and Society

August 18, 2025
Can We Prevent Aging? Eric Topol on Genes, Lifestyle, and AI in Healthcare – Skeptic

Can We Prevent Aging? Eric Topol on Genes, Lifestyle, and AI in Healthcare – Skeptic

August 18, 2025
Empyrean Technology’s revenue climbs, but profit plunges 92% in EDA spending squeeze – digitimes

Empyrean Technology’s Revenue Skyrockets as Profits Plunge 92% Amid EDA Spending Crunch

August 18, 2025
William Edwin Kornowski – thealpenanews.com

William Edwin Kornowski – thealpenanews.com

August 18, 2025
Where can bluegrass go next? Molly Tuttle has an idea : World Cafe Words and Music Podcast – NPR

Molly Tuttle Reveals Her Exciting Vision for the Future of Bluegrass

August 18, 2025
‘Luck running out’ for Swiss economy as growth slows ahead of US tariff hit – Financial Times

Swiss Economy Faces Slowdown and Challenges Ahead of US Tariffs

August 18, 2025
Terence Stamp: from arthouse icon to blockbuster villain – yahoo.com

Terence Stamp: From Arthouse Legend to Hollywood’s Ultimate Villain

August 18, 2025
How social media and reality TV influence Teens’ beauty standards and mental health – Planet Detroit

How Social Media and Reality TV Influence Teens’ Beauty Ideals and Mental Well-Being

August 18, 2025

Categories

Archives

August 2025
MTWTFSS
 123
45678910
11121314151617
18192021222324
25262728293031
« Jul    
Earth-News.info

The Earth News is an independent English-language daily published Website from all around the World News

Browse by Category

  • Business (20,132)
  • Ecology (777)
  • Economy (798)
  • Entertainment (21,676)
  • General (16,533)
  • Health (9,837)
  • Lifestyle (810)
  • News (22,149)
  • People (800)
  • Politics (806)
  • Science (16,012)
  • Sports (21,297)
  • Technology (15,779)
  • World (780)

Recent News

Comita named the Davis-Denkmann Professor of Tropical Forest Ecology – YaleNews

Comita Named Davis-Denkmann Professor of Tropical Forest Ecology

August 18, 2025
‘Science of matchmaking is a mix of algorithms and psychology’ – The Times of India

Unlocking Love: How Algorithms and Psychology Craft Perfect Matches

August 18, 2025
  • About
  • Advertise
  • Privacy & Policy
  • Contact

© 2023 earth-news.info

No Result
View All Result

© 2023 earth-news.info

No Result
View All Result

© 2023 earth-news.info

Go to mobile version