ByteSwapping in Busybox

In busybox in root/e2fsprogs/blkid/probe.hon line 296, this shows up:   Byteswapping! I thought the best thing to do would be to test based off endian-ness and if it would need to be byteswapped, do so through code rather than inline. After the above code is properly tested, I can replace the code in the probe.h with…

Don’t Think You’ll Climb Mt. COQ in 1 Semester

After my earlier dead end with COQ, I kept looking for code I could maybe tackle. My knowledge on memory and registers isn’t in depth, but it is growing. On line 1300 of the above file, there is a piece of code that looks like this I thought about using mnemonics like uint64 instead of uint32.…

COQ-Blocked

OCaml, originally known as Objective Caml, is the main implementation of the Caml programming language, created by Xavier Leroy, Jérôme Vouillon, Damien Doligez, Didier Rémy and others in 1996. OCaml extends the core Caml language with object-oriented constructs. It is a free open source project managed and principally maintained by INRIA. OCaml’s toolset includes an interactive toplevel interpreter, a bytecode compiler,…

Problem Areas Isolated…. Now Attack!

In order to increase portability, I thought that eliminating inline assembler is the obvious way to go about it. In the root/include/libbb.h file, I replaced the following code (note Line 4): with   PThreads are a fairly complex method of threading in C. What they offer, though, is the ability to introduce portability into what…

Taking my first steps with the Porting of Busybox

Having played around with Busybox a bit, I was ready to go in and change around some settings, break some stuff, and hopefully put it back together in a more portable and optimized package, ready for anything the near future could throw at it! My first order of business was to search the code for…

Gettin Busy with Busybox

I decided to look at Busybox for my first project, a program many call the “Swiss Army knife” version of Linux. It combines many common UNIX utilities into a small executable and provides minimalist replacements for most of the utilities you usually find in bzip2, coreutils, dhcp, diffutils, e2fsprogs, file, findutils, gawk, grep, ls, and…

My First Assembly Code!

When I first started learning Java, I missed the control over memory from C++. Even though I’m not fit to lick soup out of the bootprints of the Java designers and developers, I like to do things myself. Yeah. Coding in Assembly is a kick in the pants. First off, I attempted a loop that…

Exploring Assembly Code

As the project I will be tackling involves porting x86_64 programs to AArch64, I must familiarize myself with assembly code. To get the basics down, I did something noone has ever done before: created a Hello World program in C. #include <stdio.h> int main() { printf(“Hello World\n”); return 0; } I then compiled it using…

Feeling my way around a collaborative bug-fix

To get an idea of how various bugs are fixed and patches submitted by the Open Source community at large, I looked around at a couple of different projects to see what’s been done. The first project I looked at was R, an environment for statistical computing and graphics. It operates under the GNU GPL.…