BOOTLICKER

The Plan To Construct EPICURICS

2020-06-24

Here is my plan to attempt to construct a LISP operating system that will boot on the bare metal from the very first.

Part 1 — Modify the LISP Machine

Section 1 - Deal with the C library interface

Step 1

Select either EMACS or SBCL as the LISP machine.

Step 2

Work out the UNIX system calls that SBCL uses in order to function. This will require reading the SBCL / EMACS code and API.

Step 3

Deal with the UNIX system calls using the Uni of Utah’s Operating System Toolkit’s most primitive C function library, as well as its memory allocation library, and the kernel support library.

This will make the LISP machine execute properly on the hardware.

Elaboration:

This is not a POSIX compliant system, so i will not be using the Operating System Toolkit’s more extensive C component libraries. Doing this would be making big steps towards reimplementing UNIX underneath the LISP machine, instead of using SBCL or EMACS as the main operating system environment.

The implementation of ML that Albert Lin’s Master’s thesis used had a group of C libraries that performed the interface between the ML compiler and the UNIX kernel. When running in UNIX, these C libraries managed all the system calls.

The Master’s thesis started by replacing all the references to system calls inside the ML C libraries not handled by the OS Toolkit’s minimalist C function library with dummy functions.

Then, these dummy functions were reimplemented using select functions from the OS Toolkit’s minimal POSIX component C library.

EMACS is definitely written in C, and can be treated this way, but I believe SBCL is written, indeed, in Common LISP, so dealing with its system calls will require, perhaps, rewriting small portions of it in its native LISP.

Section 2 - Memory AllocationStep 4 - the OS Toolkit’s ‘LMM’ library

Depending on how EMACS/SBCL requests memory using UNIX system calls, I will follow the Master’s thesis: simply use malloc() and free() to request a big ol’ block of memory at boot, and use the internals of the LISP machine to manage the memory itself.

This way, the most primitive C library from the OS Toolkit, the Limited Memory Management C component library can be used.

This should be fairly trivial.

Part 3 - Set Up the Heap Using the Bootloader

Before we start using a file system, we can just create a memory structure externally, and get the bootloader to load it with an extra boot module.

This way we can get the LISP machine working without having to add any more extra work in order to get the system booting sooner.

Part 4 - Interrupts, Signals and Traps

Use the OS Toolkit’s kernel component library to handle exceptions/interrupts/signals/traps. This step will be similar to the minimalist C library step. The system calls that represent a UNIX signal() call need to be dealt with, and luckily the OS Toolkit has resources for this.

This will allow the interface between the hardware interrupts and the LISP machine.

Part 5 - What next?

The following issues can be dealt with after this process above has been successfully completed:

Conclusion

That’s my plan for now. Getting all this working should allow the computer to boot into a LISP Machine, and be interactive through a keyboard and a serial terminal interface.

From there, I imagine the following can be done:

SITE TAGS

1 174
16-bit 1
1984 1
2009 1
3d-graphics 1
400 1
60s 1
8-bit 1
8-bit-cpu 1
abc-news 1
absolutism 1
abstraction 1
activism 1
addicted 1
advice 1
age 1
aging 1
alasdair-macintyre 1
alienation 1
almost-over 1
alt-right 1
anaesthetists 1
anarchism 10
anarchist 2
ancap 1
ancom 1
anime 3
anthropic 1
anthropic-principle 1
anthropy 1
anti-authoritarian 2
anti-essentialism 1
antichamber 1
antics 2
aoc 1
aretha 1
aristotle 1
atari 1
atari-2600 2
atheism 1
attitude-changes 1
auspol 1
australia 2
australian-politics 1
awesome 2
bad 2
banjo-kazooie 1
base 1
basics 1
battlefield-bad-company 1
be-my-friend 1
beach 1
beatles 1
being-myself 1
bernie-sanders 1
binary-logic 1
bioshock 1
bivariate-statistics 1
black-bloc 1
blah 1
blair-leeching-off-everyone 1
blender 1
blow 1
bones 1
books 1
bootloader 1
brain-surgery 1
breakfast 2
bullying 1
bureaucracy 1
burnt 1
burqa 1
bus 1
but-i-have-no-food 1
c 3
c-programming 1
calculus 1
camera 1
can039t-sleep 3
canteen 1
capitalism 9
cat 3
cat-hair 1
cats 1
chances 1
charter 1
chat-bot 1
chatswood 1
checkout-chick 1
checkouts 1
chemistry 1
chemistry-essay 1
chicken 1
children 1
chocolate 1
chomksy 1
civilisation 1
code-46 1
coding 7
coffee 1
coffee-review 1
cold-war 1
coles 1
collapse 1
colonialism 1
commodities 1
common-lisp 1
communism 2
communist 3
communist-economics 1
community 1
compilers 1
computer-architecture 1
computer-science 2
computers 2
concepts 1
consumerism 1
content 1
convention 1
cool 2
core-basics 1
cough-mixture 1
council 1
covid 1
covid-19 4
cpu 2
creative 1
criticism 1
cryptic-shit 1
culture 1
cyber-bullying 1
cybernetics 1
cybersecurity 1
cyberspace 3
darkness 1
debian 1
debut 1
democracy 1
desert 1
dialectics 3
direct-action 1
disagreement 1
disco 1
discrete-transistors 1
disney 1
doctor 1
doctors 1
dog 1
domain-name 1
donald-trump 1
dont-hate-me 1
down-to-clown 1
dr 1
draft 1
drawing 1
dreamcast 3
drm 1
druggies 1
druggies-on-the-bus 2
drugs 2
dtl-logic 1
dusty 1
easy-way-through-life 1
eat 1
economics 3
economy 1
edward-said 1
egotism 1
election 1
elections 1
electronics 2
emacs 1
emotivism 1
engels 1
engineering 1
english 1
entertainment 1
epic-poems 1
epicurics 1
epicurus 1
espresso 1
essay 2
essential-left 1
essentialism 1
ethical-substance 1
ethics 3
evangelion 1
everything 3
everythings-sorted-up-here 1
evo-psych 1
evolution 1
evolutionary-psychology 1
ex-lj 13
exchange 2
expensive 1
failure 1
fair-work-commission 1
fairy-tales 1
false-rumours 1
famiily 1
families 1
family 1
fascism 1
fast-food 1
fat 1
fat-people 1
fear 1
fediverse 5
feuerbach 3
film 1
final-fantasy 1
fiscal 1
floreat 1
floreat-library 1
folk-tales-from-malasrion 2
food 2
food-review 1
form 1
forth 1
foss 16
free-markets 1
free-software 1
freedom 2
friends 1
fun 1
fun-in-the-floreat-library 1
functional-programming 1
fundamentals 1
funk 1
funny 10
funny-shit 1
game 1
game-dev 1
game-gear 1
gamecube 1
gamergate 1
games 2
gaming 5
gatherings 1
gemini 1
gemini-protocol 1
genesis 1
give-back 1
give-me-money 1
give-you-up 1
global 1
global-warming 1
gnu 3
god 2
gold-standard 1
google 1
graph-paper 1
graphic-novel 1
graveyard 1
greens 1
gremanese 1
gremano 5
growth 1
guix 5
guns 1
habits 1
hackaday 1
hacker 1
hacking 4
hacks 1
hail 1
hair 1
hale 1
hale-school 1
half-life-2 1
half-light 1
happiness 3
happy 1
hardware 6
hasbro 1
hatespeech 1
hegel 8
hermeneutics 2
highly-online 1
hijab 1
hilarious 1
hip 1
hippie-shit 1
history-of-computers 1
hobbies 1
holidays 1
hollywood 1
homebrew-computer 1
homebrew-cpu 1
hospital 3
hotel 1
houses 1
how-to 1
html 1
http 1
hugs 1
humour 6
hurt 2
i-am 1
i-am-going-to-waste-money-on-making-a-website 1
i-am-hilarious 1
i-am-making-a-website 1
i-dont-have-any-phone-credit-left 1
i-have-no-food 1
i-herd-u-liek-ruddkips 1
i-want-food 1
i-want-to-work-in-a-bookstore 1
i-wrote-this-a-while-ago 1
ideology 1
immaturity 1
indie-project 2
indigenous-cultures 1
individualism 1
industries 1
inflation 1
insanity 1
institutions 1
insurrection 1
interesting 1
interpersonal-politics 2
interpretation 1
interpreters 1
intrinsic 1
investment 2
invisible-hand 1
iron 1
iron-man 1
irony 1
islam 1
islamophobia 1
it-can-be-your-website-too 1
japan 2
japanese 2
javascript 1
jeff 1
jen 1
jewish-question 1
jjjm 1
joe 1
john-lennon 1
joke 4
jokes 1
jon-blow 1
journalism 2
jousen 1
jumper 1
just-give-up-now 1
justice 1
juvenile 1
k-and-r-ansi-c 1
kafkaesque 1
kantianism 1
king 1
kropotkin 1
labour-theory-of-value 1
lack-of-family 1
lack-of-sleep 1
landships 1
language 1
large-men 1
leadership 1
leavers 1
leederville 1
leftist 1
legacy-cpu 1
leonid-brezhnev 1
lesser-jou 1
letters 1
letters-that-tell-stories 1
liberalism 1
life 2
lifestyle 1
lights-on-the-horizon 1
lineageos 1
linux 10
lisp 10
lisp-machine 1
literature 2
lobotomy-software 2
lockdown 2
logic 1
loser 1
loss 1
love 3
lucretius 1
machiavelli 1
macintyre 1
macros 1
mainstream-media 1
malasrion 21
man 1
markdown 1
markets 2
marx 7
marxism 1
marxist-economics 1
master-system 1
mastodon 1
materialism 1
mathematics 2
maths 1
matt 1
may-day 1
maybe-in-elizabeths 1
mcdonalds 1
mcdowell 1
meaning 2
mechanical-marxism 1
media 1
mega-drive 10
memories 1
metaphysics 1
methodone 1
micro-kernels 1
middle-east 1
midnight 1
mightve-spelt-methodone-wrong 1
minecraft 1
minix 1
mmorpg 1
money 2
monies 1
moon 1
morality 2
morals 1
more-stories-from-malasrion 1
movements 1
movie 4
movies 2
mozilla 1
mr-shaw 1
mua-union 1
music 1
muslim 1
mutually-assured-destruction 1
n64 11
natural 1
naturalism 1
nazi 1
nazism 1
need-help 1
nela 1
neo-nazi 1
neolithic 1
nes 7
netflix 1
never-gonna-give-you-up 1
newgrounds-flash 1
night 3
nightfill 1
nihilism 1
nintend-wii 1
nintendo 5
no-left-turn 1
nonsense 1
normativity 1
norms 1
north-perth 1
not-boring 1
nuclear-explosions 1
nuclear-family 1
obesity 1
objectivism 1
observations 1
off-the-battlefield 1
office 1
olol 1
on-the-battlefield 1
online 1
online-communities 1
online-culture 2
online-history 1
open-hardware 3
open-heart-surgery 1
operating-system 1
operating-systems 1
oppression 1
organicisim 1
organising 1
orientalism 1
outline-for-a-bit 1
outrageous 1
over-production 1
pacifism 1
pancakes 1
panic 1
pants 1
parliament 3
pc 6
pc-engine 1
pc-fx 1
peaceful 1
pen 1
people 1
people-always-text-me-when-i-have-no-phone-credit 1
personal 2
perth 4
pet 1
peter-goldsworthy 1
pets 1
phd 1
phenomenology 1
philosophy 12
philosophy-of-computers 1
philosphy-of-computers 1
phone-unlock 1
pictures 1
pills 1
pine64 1
pinephone 3
plains 1
plan-for-game 1
plan9 1
platform 1
playstation 1
please-dont-sue-me 1
pleroma 1
poems 1
poetry 2
pokemon 1
pokemon-clone 1
polemic 1
political 1
politics 12
polygonz 1
pop 1
precarious-work 1
price 1
price-and-profit 1
privacy 1
private-property 1
prizes 1
probably-my-shittest-poem-yet 1
productivity 1
productivity-commission 1
profit 2
programming 2
project 2
projects 2
proposal 1
proprietary 3
proudhon 2
ps1 2
ps2 2
ps3 2
public 1
public-office 1
public-transport 1
punching-richard-spencer 1
qantas 1
quake 1
quake-gl 1
quietism 1
racism 1
radical 1
radio 1
radiohead 1
rain 1
ranciere 1
random-updates 19
rare 2
rational-functions 1
rationalism 1
realistic-space 1
reason 1
red-and-sven 2
relativism 1
representation 1
representative 1
resolutions 1
retail 1
retro 1
retro-games 1
review 2
rich-kids 1
riches 1
rick 1
rick-astley 1
right 1
rightist 1
road-to-no-where 1
robot 1
robot-cat-freaked-me-out 1
robots-are-real 1
robotssss 1
roguelike 1
romantic 1
romanticism 1
rottnest 1
rudd 1
ruddkips 1
russia 1
sackings 1
salary 1
sales 1
saturday 2
saturn 1
scam 1
school 3
science 1
screaming-children 1
searching 1
secure-work 1
sega 3
shares 1
shelf-stacking 1
shitty 1
shitty-long-poem 1
shrendig-and-foolio 1
sieg-heil 1
singapore 2
sitcom 1
sittlichkeit 1
sleep 2
sly-and-the-family 1
smolnet 1
snes 7
socdem 1
social 2
social-democracy 1
social-media 3
social-problems 1
socialism 3
socialist 1
socialist-strategy 1
socially-necessary-labour-time 1
society 2
software-hacking 1
someone-give-me-food 1
sony 2
soul 1
soviet 2
soviets 1
spinoza 1
spoof 1
square-enix 1
star-fox 1
star-fox-adventures 1
star-trek 1
states 2
stimulus-package 1
stoicism 1
stone 1
study 1
stuff 4
stupidity 1
sun 1
sunday 1
sunset 1
sunshine-on-the-spotless-mind 1
superstructure 1
supremacy 1
surgery 1
surplus-value 2
tamagotchi 1
tanjoubi-omedetou 1
tankie 1
tech 8
technology 2
teeth 1
teleology 1
television 1
ternary-logic 1
terrorism 1
text 1
text-files 1
the-almighty-flarg 1
the-king 1
the-notion 1
theft 3
theory 5
therapeutic 1
therapy 1
thesis 1
things 1
things-that-are-burnt 1
things-that-do-stuff 1
tic-80 1
ticket 1
tickets 1
time-travel 1
toys 1
trackers 1
traditional-saying 1
transactions 1
transistors 1
trendy 1
trotskyism 1
trust 1
ttl-logic 1
tuck-shop 1
turbografx 1
two-suns 1
ubuntu 1
ugliness 1
ugly-people 3
uncategorised 59
uncategorized 4
uni 2
union-unrest 1
unionism 1
unions 2
unix 4
unix-philosophy 1
ussr 1
value 1
values 1
victim 1
video-game 1
video-games 3
violence 2
virtual-pet 1
virtue-ethics 1
w-b-yeats 1
wages 1
wai-con 1
wai.con 1
walking 1
war 2
wealth 1
web 3
website 1
weird 2
weirdness 2
wembley-downs 1
western-australia 1
western-civilisation 1
where-is-the-battlefield 1
whine 1
whiney-people 1
white 1
white-supremacist 1
wifi 2
wii-u 2
william-butler-yeats 1
windows 1
woo 1
woolworths 1
work 6
work-is-shit 1
worker-unrest 1
workers 3
workers-liberty 1
workers-rights 1
world-wide-web 1
xbox 1
xiaomi 1
yeats 1
young-people 2
young-worker 1
youth 1
zelda 1
zizek 1