Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
506f61a
Try to boot into kernel mode
dsoellinger Dec 5, 2015
dc956e3
Add a few lines...
dsoellinger Dec 6, 2015
72f8df0
Trying to switch to the user prog
dsoellinger Dec 6, 2015
657ef30
Load kernel
dsoellinger Dec 8, 2015
e191cba
comments... on how to go about this...
mfm92 Dec 8, 2015
ff323a8
Implement hypercalls
dsoellinger Dec 9, 2015
b6104e3
Impl shared mem
dsoellinger Dec 9, 2015
3f5a3f9
advances...
mfm92 Dec 15, 2015
73b2435
Some changes
dsoellinger Dec 15, 2015
475dbd0
advances...
mfm92 Dec 17, 2015
94610e1
.
dsoellinger Dec 17, 2015
e612e77
.
dsoellinger Dec 17, 2015
0d01bbe
S.
dsoellinger Dec 17, 2015
6192b70
.
dsoellinger Dec 17, 2015
4c72429
update to makefile, unresolved symbols OK
mfm92 Dec 17, 2015
169ca48
deleted binaries
mfm92 Dec 17, 2015
3eb98ae
Separate deployment targets for OSX/Linux
dsoellinger Dec 25, 2015
4c4b49e
Working context switching/page fault handling
dsoellinger Dec 27, 2015
90f734e
bug fix in kernel event loop, multiple page faults no longer lead to …
mfm92 Jan 6, 2016
3fba3a3
.
mfm92 Jan 12, 2016
197313e
Fix fork and exit
dsoellinger Jan 12, 2016
3133bb0
Run processes in parallel
dsoellinger Jan 13, 2016
820f499
Migrate interrupt to yield
dsoellinger Jan 13, 2016
199c6e0
implementing (un)lock/wait syscalls in the OS
mfm92 Jan 14, 2016
39aefbd
bug in unlock fixed
mfm92 Jan 14, 2016
d4cebc1
improved (un)locking semantics
mfm92 Jan 14, 2016
b70e8ad
Set previous when inserting processes to blocked/zombie queue
mfm92 Jan 18, 2016
fc736b8
First Draft: Treiber Stack Pop/Push + CAS
mfm92 Jan 18, 2016
7902146
Thread Fork: First Draft
mfm92 Jan 20, 2016
9499866
Treat forked threads as processes...
mfm92 Jan 20, 2016
6839c52
.
mfm92 Jan 20, 2016
3e10cbc
freeing page tables now...
mfm92 Jan 25, 2016
f9d16ef
.
mfm92 Jan 28, 2016
2c7ec75
adapted makefile
mfm92 Jan 28, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 59 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
CC_OSX := clang
CC_OPT_OSX := -w -m32 -g -undefined dynamic_lookup -D'main(a, b)=main(int argc, char **argv)'
CC_LINUX := gcc
CC_OPT_LINUX := -w -m32 -Wl,--unresolved-symbols=ignore-in-object-files -D'main(a, b)=main(int argc, char **argv)'
EXEC := selfie
MEM_SIZE := 32
RTS1 := 2
RTS2 := 10
RTS3 := 100
TEST_INPUT := treiber.c
TEST_BINARY := myprog.mips
OS_BINARY := os.mips
KERNEL_BINARY := kernel.mips

all: test_binary_linux

clena: clean
clan: clean
clane: clean
claen: clean
cean: clean
calen: clean
clea: clean
cclean: clean
lcean: clean

compile_osx:
$(CC_OSX) $(CC_OPT_OSX) $(EXEC).c -o $(EXEC)

test_binary_osx:
$(CC_OSX) $(CC_OPT_OSX) $(EXEC).c -o $(EXEC)
touch $(TEST_BINARY)
touch $(KERNEL_BINARY)
./$(EXEC) -c $(TEST_INPUT) -o $(TEST_BINARY)
./$(EXEC) -c $(EXEC).c -o $(KERNEL_BINARY)
./$(EXEC) -k 64 $(KERNEL_BINARY) -l $(TEST_BINARY) -m 16

compile_linux:
$(CC_LINUX) $(CC_OPT_LINUX) $(EXEC).c -o $(EXEC)

test_binary_linux:
$(CC_LINUX) $(CC_OPT_LINUX) $(EXEC).c -o $(EXEC)
touch $(TEST_BINARY)
touch $(KERNEL_BINARY)
./$(EXEC) -c $(TEST_INPUT) -o $(TEST_BINARY)
./$(EXEC) -c $(EXEC).c -o $(KERNEL_BINARY)
./$(EXEC) -k 64 $(KERNEL_BINARY) -l $(TEST_BINARY) -m 16

debug:
ggdb --args ./$(EXEC) -k 64 $(KERNEL_BINARY) -l $(TEST_BINARY) -m 16

clean:
rm -f *.mips*
rm -f $(EXEC)
rm -f out
rm -f $(TEST_BINARY)
rm -f out.txt
rm -f *~
rm -f *.s
Loading