jbkcc + lowlevel   34

Mach Scheduling and Thread Interfaces
Essential information for programming in the OS X kernel. Includes a high-level overview.
api  lowlevel  scheduling  threads  mach 
august 2018 by jbkcc
Performance of Wireless Networks: WiFi - High Performance Browser Networking (O'Reilly)
What every web developer must know about mobile networks, protocols, and APIs provided by browser to deliver the best user experience.
wireless  wifi  reference  networking  802.11b  lowlevel 
june 2018 by jbkcc
When FFI Function Calls Beat Native C « null program
The most surprising result of the benchmark is that LuaJIT’s FFI is substantially faster than C. It’s about 25% faster than a native C function call to a shared object function. How could a weakly and dynamically typed scripting language come out ahead on a benchmark? Is this accurate?

It’s actually quite reasonable. The benchmark was run on Linux, so the performance penalty we’re seeing comes the Procedure Linkage Table (PLT). I’ve put together a really simple experiment to demonstrate the same effect in plain old C:
benchmarking  x86_64  ffi  jit  function_call  lowlevel 
may 2018 by jbkcc
ABI Compliance Checker
A tool for checking backward API/ABI compatibility of a C/C++ library
abi  compliance  validation  compilers  lowlevel 
april 2016 by jbkcc
Introduction | Practical Guide to Bare Metal C++
Once in a while I encounter a question whether C++ is suitable for embedded development and bare metal development in particular. There are multiple articles of how C++ is superior to C, that everything you can do in C you can do in C++ with a lot of extras, and that it should be used even with bare metal development. However, I haven't found many practical guides or tutorials of how to use C++ superiority and boost development process compared to conventional approach of using “C” programming language. With this book I hope to explain and show examples of how to implement soft real time systems without prioritising interrupts and without any need for complex real time task scheduling. Hopefully it will help someone to get started with using C++ in embedded bare metal development.
baremetal  embedded_programming  c++  lowlevel  internals  embedded_systems  freestanding 
april 2016 by jbkcc
Tracing Objective-C method calls – Technical Notes
A collection of useful articles to help with research
tracing  lowlevel  objc 
april 2016 by jbkcc
mach_inject - interprocess code injection for Mac OS X
lowlevel  code_injection  interposition  reverse_engineering 
july 2015 by jbkcc
task_vaccine - Yet another code injection library for OS X
lowlevel  code_injection  osx 
july 2015 by jbkcc
Debugging: A Case Study - Debugging - objc.io issue #19
A periodical about best practices and advanced techniques for iOS and OS X development.
debugging  lowlevel  objc  swift  lldb 
december 2014 by jbkcc
Bitsquatting refers to the registration of a domain names one bit different than a popular domain. The name comes from typosquatting: the act of registering domain names one key press different than a popular domain. Bitsquatting frequently resolved domain names makes it possible to exploit computer hardware errors via DNS.
dns  security  lowlevel  oblique_causation  bit_flip  statistics  law_of_large_numbers  bitsquatting  error 
july 2014 by jbkcc

related tags

802.11b  abi  abstraction  algorithms  analysis  api  architecture  article  assembly  baremetal  beautiful  benchmarking  bitsquatting  bit_flip  blog  branch_prediction  bufferbloat  c  c++  caching  code_as_data  code_injection  compilation  compilers  compliance  computation  conway  cpu  cpu_architecture  c_language  database  data_dependencies  debugging  design  desugar  didactic  dns  dynamism  editor  embedded_programming  embedded_systems  emulation  engineering  error  examples  explanation  ffi  file_format  font  fonts  freestanding  function_call  game_of_life  generation  ghc  hack  hardware  haskell  implementation  instructions  intel  internals  interposition  introduction  javascript  jit  joe.duffy  kernel  language  languages  language_design  law_of_large_numbers  links  linux  lldb  llvm  llvm_ir  lowlevel  mach  materiality  meltdown  mental_model  metaprogramming  minimal  network  networking  objc  oblique_causation  open-type  opentype  optimization  osx  packet  paul.khuong  performance  play  programming  programming_languages  programming_language_design  python  queue_delay  reference  reflection  resources  reverse_engineering  scheduling  security  seeing_the_bottom  side_channel  side_effects  spectre  sqlite  statistics  stg  sugar  swift  syntax  syscall  systems_design  testcase  threads  tiny  tools  tool_design  trace  tracing  tutorial  typography  validation  war_story  wifi  wireless  x86  x86_64 

Copy this bookmark: