xcode-select --install
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
""" | |
The MIT License (MIT) | |
Copyright (c) 2017 Sasha Goldshtein | |
Copyright (c) 2018 Alexey Ivanov | |
Permission is hereby granted, free of charge, to any person obtaining a copy | |
of this software and associated documentation files (the "Software"), to deal |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ADB=${ANDROID_HOME}/platform-tools/adb | |
HPROF_CONV=${ANDROID_HOME}/platform-tools/hprof-conv | |
# customized functions | |
# dump droid heap | |
function droid_hd() { | |
PACKAGE_NAME=$1 | |
TIME=$(date +"%Y%m%d_%H%M%S") | |
FILE_NAME="${PACKAGE_NAME}-${TIME}-heap.hprof" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
# encoding: utf-8 | |
from __future__ import print_function | |
''' | |
analyze /proc/<pid>/smaps | |
doc | |
http://liutaihua.github.io/2013/04/25/process-smaps-analysis.html |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package demo; | |
public interface Node {} |
I recently happened upon a very interesting implementation of popen()
(different API, same idea) called popen-noshell using clone(2)
, and so I opened an issue requesting use of vfork(2)
or posix_spawn()
for portability. It turns out that on Linux there's an important advantage to using clone(2)
. I think I should capture the things I wrote there in a better place. A gist, a blog, whatever.
This is not a paper. I assume reader familiarity with
fork()
in particular and Unix in general, though, of course, I link to relevant wiki pages, so if the unfamiliar reader is willing to go down the rabbit hole, they should be able to come ou
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
clear | |
# Preparing the build environment | |
# https://github.com/fuchsia-mirror/manifest#prerequisites | |
# https://github.com/fuchsia-mirror/magenta/blob/master/docs/getting_started.md#preparing-the-build-environment | |
sudo apt-get install golang git-all curl texinfo libglib2.0-dev autoconf libtool libsdl-dev build-essential | |
# Creating a new checkout (https://github.com/fuchsia-mirror/manifest#creating-a-new-checkout) | |
curl -s https://raw.githubusercontent.com/vanadium/go.jiri/master/scripts/bootstrap_jiri | bash -s fuchsia |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python | |
import sys | |
from keystone import * | |
from unicorn import * | |
from unicorn.arm_const import * | |
from capstone import * | |
from capstone.arm import * | |
from capstone.x86 import * |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
rm -rf CMake* | |
export NDK=/home/syoyo/local/android-ndk-r10e | |
export SYSROOT=$NDK/platforms/android-21/arch-arm64 | |
export CC="$NDK/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-gcc" | |
export CXX="$NDK/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-g++" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#! /usr/bin/env bash | |
# Get xv6 working with OSX Yosemite | |
# Most things were here: https://doesnotscale.com/compiling-xv6-on-os-x-10-9/ | |
# You need homebrew installed to make this thing work | |
brew tap homebrew/versions && brew install gcc48 | |
brew deps qemu | xargs brew install | |
export PATH=/usr/local/bin:$PATH | |
export CC=/usr/local/bin/gcc-4.8 | |
brew install wget |