New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

uiojs

Package Overview
Dependencies
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

uiojs

Exposes Linux Userspace IO functions to javascript

latest
Source
npmnpm
Version
1.1.1
Version published
Maintainers
1
Created
Source

uiojs

A node addon for making Userspace IO on Linux accessible by javascript.

Currently implements process_vm_readv and process_vm_writev from sys/uio.
https://man7.org/linux/man-pages/man2/process_vm_readv.2.html

testing

due to the nature of this addon it is beyond my capabilities to automatically test it, but it does work, at least on my arm v8 system (IMX8MM) running kernel 5.15.32 and debian 11.

int64 and uint64 have not been tested yet, I have no use for them at this point, but if one experiences problems with them head over to the issues tab:
https://github.com/GOcontroll/uiojs/issues

installing

"dependencies": {
    "uiojs": "1.1.1"
},

include the dependency in your package.json and npm install

or download the source and install it manually from the source

usage

import { dataTypes, asap_element, process_read, process_write } from "uiojs";

let address = 0x422540;                  //the memory address to read from
let dataType = dataTypes.uint16;         //the value to read is an unsigned 16 bit integer
let arraySize = 1;                       //it is a single value and not an array

asap_dutycycle = new asap_element(address, dataType, arraySize);

pid = 2842;   //automate looking up the pid of the process you would like to influence, this is just a simple example

let dutycycle = process_read(pid, asap_dutycycle);
// do some work
let new_dutycycle = 900
process_write(pid, asap_dutycycle, new_dutycycle);

//process_read(pid, asap_dutycycle) == 900 now

these functions are also methods of the asap_element class:

let dutycycle = asap_dutycycle.process_read(pid)
asap_dutycycle.process_write(pid, new_dutycycle)

The regular process_read and process_write might be deprecated or altered to serve a more generic purpose at some point.

Keywords

UIO

FAQs

Package last updated on 14 Apr 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts