about summary refs log tree commit diff stats
path: root/subx/ex4.subx
Commit message (Collapse)AuthorAgeFilesLines
* 4392Kartik Agaram2018-07-241-0/+4
|
* 4360Kartik Agaram2018-07-161-1/+1
|
* 4356 - subx: first program with a data segmentKartik Agaram2018-07-161-6/+21
| | | | | | | | | | | We read() a character from stdin and write() it out to stdout, saving it to a global variable in between. ELF binaries are inefficient; you can ask for a low alignment, but the kernel may not be able to handle it. If you set up a high alignment then you end up wasting an increasing amount of space in each segment because of the constraint that the offset bear some relationship with the loaded address.
* 4350Kartik Agaram2018-07-151-0/+1
| | | | | | | Reorganize layers to introduce the translation workflow right at the start. We also avoid duplicating parsing code. Programs are always parsed into the `program` data structure.
* 4330 - start allocating data/stack/heap segmentsKartik Agaram2018-07-081-1/+1
| | | | | | | | ex4 now writes to the (global) data segment, rather than trying to write to the code segment. We still need to specify the other segments in the generated ELF, though.
* 4326 - new example: read() from stdinKartik Agaram2018-07-071-0/+23
Currently only runs in emulated mode. Likely a paging issue, writing data to code page. I'm not checking the return value.