The instructions are:
$ go build udocker.go
$ chgrp docker udocker
$ chmod g+s udocker
$ mv udocker /usr/local/bin
I have performed the first three and therefore have this:
| [cargobomb-prod cargobomb]$ df -h | |
| Filesystem Size Used Avail Use% Mounted on | |
| devtmpfs 15G 92K 15G 1% /dev | |
| tmpfs 15G 72K 15G 1% /dev/shm | |
| /dev/xvda1 99G 31G 68G 31% / | |
| /dev/xvdb 985G 801G 134G 86% /home/ec2-user/cargobomb/work | |
| [cargobomb-prod cargobomb]$ df -h | |
| Filesystem Size Used Avail Use% Mounted on | |
| devtmpfs 15G 92K 15G 1% /dev | |
| tmpfs 15G 72K 15G 1% /dev/shm |
| use std::io::{BufRead, BufReader}; | |
| use std::process::{Child, Command, Stdio}; | |
| fn main() { | |
| for id in 1..64_000 { | |
| let mut child = Command::new("echo").arg(id.to_string()) | |
| .stdout(Stdio::piped()).stderr(Stdio::piped()) | |
| .spawn().unwrap(); | |
| output(&mut child, false); | |
| child.wait().unwrap(); |
| --- runtime-gdb.py 2015-05-05 17:03:21.520510629 +0100 | |
| +++ runtime-gdb-hacks.py 2015-05-05 17:05:24.416677753 +0100 | |
| @@ -369,6 +369,41 @@ | |
| ptr = ptr[linkfield] | |
| +class AidanCmd(gdb.Command): | |
| + "List all goroutines." | |
| + | |
| + def __init__(self): |
The instructions are:
$ go build udocker.go
$ chgrp docker udocker
$ chmod g+s udocker
$ mv udocker /usr/local/bin
I have performed the first three and therefore have this:
It's over 9 years old (as of 2024-02-18), there are many better guides! You might like https://rust-unofficial.github.io/too-many-lists/
% Let's build a binary tree!
Let's build a binary tree of strings in Rust. To recap, each node in a binary tree:
| var http = require('http'); | |
| http.createServer(function (req, res) { | |
| res.writeHead(200, {'Content-Type': 'text/plain'}); | |
| res.write('echo /'); | |
| console.log('kill me now'); | |
| setTimeout(function () { | |
| res.write('tmp/xx\n'); | |
| }, 50000); | |
| }).listen(8080, '127.0.0.1'); | |
| console.log('Server running at http://127.0.0.1:8080/'); |
| int main(void) { | |
| int x = EM_ASM_INT({ | |
| Module.print('I received: ' + $0); | |
| return $0 + 1; | |
| }, 100) | |
| return x; | |
| } |
| .PHONY: clean do | |
| CFLAGS=-O0 -m32 | |
| EMFLAGS=\ | |
| --memory-init-file 0 | |
| do: clean x.o y.o z.o | |
| emar rc libtest.a y.o | |
| emar rc libtest.a x.o | |
| emranlib libtest.a |
| dd if=/dev/urandom bs=1M count=1000 of=/tmp/bigfile | |
| # Note! This will cause your computer to slow down while it puts | |
| # all files it's accessing back in memory | |
| sudo sync | |
| sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches' | |
| sleep 5 | |
| dd if=/tmp/bigfile bs=1M of=/dev/null |
| package main | |
| import ( | |
| "database/sql" | |
| "database/sql/driver" | |
| "net/http" | |
| "runtime" | |
| "time" | |
| ) |