Skip to content

Commit 982a202

Browse files
committed
Merge branch 'dev'
2 parents 1932630 + 93828fb commit 982a202

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

81 files changed

+1170
-636
lines changed

.github/workflows/release.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
with:
2626
go-version: '1.22'
2727
- name: install tools
28-
run: sudo apt update && sudo apt install xorriso mtools grub-pc-bin zip gcc-i686-linux-gnu qemu-system-x86 vncsnapshot curl nasm -y
28+
run: sudo apt update && sudo apt install xorriso mtools grub-pc-bin zip gcc-i686-linux-gnu qemu-system-x86 vncsnapshot curl nasm jq -y
2929
- name: install fire
3030
run: |
3131
git clone https://github.com/Glowman554/FireStorm
@@ -35,7 +35,7 @@ jobs:
3535
git config --global user.email "[email protected]"
3636
git config --global user.name "Glowman554"
3737
- name: release
38-
run: MESSAGE_WEBHOOK=${{ secrets.MESSAGE_WEBHOOK }} MICROOS_BUILD_TOKEN=${{ secrets.MICROOS_BUILD_TOKEN }} bash release.sh ${{ matrix.preset }} "${{ github.event.head_commit.message }}"
38+
run: MESSAGE_WEBHOOK=${{ secrets.MESSAGE_WEBHOOK }} MICROOS_BUILD_TOKEN=${{ secrets.MICROOS_BUILD_TOKEN }} MICROOS_UPLOAD_TOKEN=${{ secrets.MICROOS_UPLOAD_TOKEN }} bash release.sh ${{ matrix.preset }} "${{ github.event.head_commit.message }}"
3939
- uses: actions/upload-artifact@v4
4040
with:
4141
name: build-${{ matrix.preset }}

Makefile

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
include config.mk
22

33
all: res
4-
make -C mckrnl
5-
make -C user
4+
make -C mckrnl -j $(nproc)
5+
make -C user -j $(nproc)
66
ifeq ($(GUI),1)
7-
make -C gui
7+
make -C gui -j $(nproc)
88
endif
99

1010
NETDEV = e1000
@@ -93,7 +93,7 @@ EXECUTABLE = mckrnl/core/mckrnl.elf
9393
debug:
9494
gdb -ex "symbol-file $(EXECUTABLE)" -ex "target remote localhost:1234" -ex "b _main"
9595

96-
clean: iso
96+
clean:
9797
make -C mckrnl clean
9898
make -C user clean
9999
ifeq ($(GUI),1)

config/kernel.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -196,13 +196,17 @@
196196
}
197197
},
198198
{
199-
"name": "Paging",
199+
"name": "Memory",
200200
"value": {
201-
"title": "Paging",
201+
"title": "Memory",
202202
"items": [
203203
{
204204
"name": "PAGING_DATA_PAGES",
205205
"value": 512
206+
},
207+
{
208+
"name": "KERNEL_HEAP_SIZE_MB",
209+
"value": 32
206210
}
207211
]
208212
}

gui/Makefile

Lines changed: 18 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,26 @@
1-
all:
2-
mkdir -p bin
3-
mkdir -p lib
4-
5-
make -C libwindow library
1+
LIBS = libwindow
2+
PROGRAMS = vflvm explorer imgview taskmgr sysctl netinfo paint
63

7-
make -C vflvm prog
8-
make -C explorer prog
9-
make -C imgview prog
10-
make -C taskmgr prog
11-
make -C sysctl prog
12-
make -C netinfo prog
4+
all:
5+
make build_libraries -j $(nproc)
6+
make build_programs -j $(nproc)
137

14-
make -C paint prog
8+
build_libraries: $(addsuffix _library,$(LIBS))
9+
build_programs: $(addsuffix _prog,$(PROGRAMS))
1510

16-
clean:
17-
make -C libwindow clean
11+
%_library:
12+
mkdir -p lib
13+
make -C $* library -j $(nproc)
1814

19-
make -C vflvm clean
20-
make -C explorer clean
21-
make -C imgview clean
22-
make -C taskmgr clean
23-
make -C sysctl clean
24-
make -C netinfo clean
15+
%_prog:
16+
mkdir -p bin
17+
make -C $* prog -j $(nproc)
2518

26-
make -C tic_tac_toe clean
27-
make -C paint clean
2819

20+
clean:
21+
$(foreach lib,$(LIBS),make -C $(lib) clean;)
22+
$(foreach prog,$(PROGRAMS),make -C $(prog) clean;)
2923

3024
compile_flags.txt:
31-
make -C libwindow compile_flags.txt
32-
33-
make -C vflvm compile_flags.txt
34-
make -C explorer compile_flags.txt
35-
make -C imgview compile_flags.txt
36-
make -C taskmgr compile_flags.txt
37-
make -C sysctl compile_flags.txt
38-
make -C netinfo compile_flags.txt
39-
40-
make -C paint compile_flags.txt
25+
$(foreach lib,$(LIBS),make -C $(lib) compile_flags.txt;)
26+
$(foreach prog,$(PROGRAMS),make -C $(prog) compile_flags.txt;)

mckrnl/Makefile

Lines changed: 16 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,52 +1,25 @@
1-
all:
2-
make -C core
31

4-
mkdir -p modules
5-
make -C filesystem/fat32
6-
make -C filesystem/nextfs
7-
make -C filesystem/ramfs
8-
make -C driver/ac97
9-
make -C driver/ata
10-
make -C driver/ps2
11-
12-
make -C network/am79C973
13-
make -C network/e1000
14-
make -C network/ne2k
15-
make -C network/rtl8139
2+
CORE = core
3+
MODULES = network/am79C973 network/e1000 network/ne2k network/rtl8139 \
4+
filesystem/fat32 filesystem/nextfs filesystem/ramfs \
5+
feature/acpi_dump feature/lai \
6+
driver/ac97 driver/ata driver/ps2
167

17-
make -C feature/acpi_dump
8+
all: _core $(addsuffix _module,$(MODULES))
189

10+
_core:
11+
make -C $(CORE) -j $(nproc)
1912

20-
clean:
21-
make -C core clean
13+
%_module:
14+
mkdir -p modules
15+
make -C $(patsubst %_module,%,$@) -j $(nproc)
2216

23-
make -C filesystem/fat32 clean
24-
make -C filesystem/nextfs clean
25-
make -C filesystem/ramfs clean
26-
make -C driver/ac97 clean
27-
make -C driver/ata clean
28-
make -C driver/ps2 clean
2917

30-
make -C network/am79C973 clean
31-
make -C network/e1000 clean
32-
make -C network/ne2k clean
33-
make -C network/rtl8139 clean
18+
clean:
19+
make -C $(CORE) clean
20+
$(foreach mod,$(MODULES),make -C $(mod) clean;)
3421

35-
make -C feature/acpi_dump clean
3622

3723
compile_flags.txt:
38-
make -C core compile_flags.txt
39-
40-
make -C filesystem/fat32 compile_flags.txt
41-
make -C filesystem/nextfs compile_flags.txt
42-
make -C filesystem/ramfs compile_flags.txt
43-
make -C driver/ac97 compile_flags.txt
44-
make -C driver/ata compile_flags.txt
45-
make -C driver/ps2 compile_flags.txt
46-
47-
make -C network/am79C973 compile_flags.txt
48-
make -C network/e1000 compile_flags.txt
49-
make -C network/ne2k compile_flags.txt
50-
make -C network/rtl8139 compile_flags.txt
51-
52-
make -C feature/acpi_dump compile_flags.txt
24+
make -C $(CORE) compile_flags.txt
25+
$(foreach mod,$(MODULES),make -C $(mod) compile_flags.txt;)

mckrnl/core/devices/font.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#include <memory/vmm.h>
1+
#include <memory/heap.h>
22
#include <devices/font.h>
33
#include <assert.h>
44
#include <string.h>
@@ -26,8 +26,8 @@ char* font_file_name(struct devfs_file* dfile) {
2626
}
2727

2828
devfs_file_t* get_font_file(int font_size, void* font_pointer) {
29-
font_file_t* file = vmm_alloc(TO_PAGES(sizeof(font_file_t)));
30-
29+
font_file_t* file = kmalloc(sizeof(font_file_t));
30+
3131
file->file.read = font_file_read;
3232
file->file.prepare = font_file_prepare;
3333
file->file.name = font_file_name;

mckrnl/core/devices/nic.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#include <devices/nic.h>
2-
#include <memory/vmm.h>
2+
#include <memory/heap.h>
33
#include <driver/disk_driver.h>
44
#include <stdio.h>
55
#include <assert.h>
@@ -57,7 +57,7 @@ char* nic_file_name(devfs_file_t* file) {
5757

5858

5959
devfs_file_t* create_nic_file(nic_driver_t* nic, int id) {
60-
nic_file_t* nic_file = vmm_alloc(TO_PAGES(sizeof(nic_file_t)));
60+
nic_file_t* nic_file = kmalloc(sizeof(nic_file_t));
6161
memset(nic_file, 0, sizeof(nic_file_t));
6262

6363
nic_file->nic = nic;

mckrnl/core/driver/acpi/dsdt.c

Lines changed: 0 additions & 67 deletions
This file was deleted.

mckrnl/core/driver/acpi/madt.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
#include <stdint.h>
55
#include <stddef.h>
66
#include <stdio.h>
7-
#include <memory/vmm.h>
7+
#include <memory/heap.h>
88

99
uint8_t* madt_lapic_ids = NULL;
1010
uint8_t madt_lapic_count = 0;
@@ -15,7 +15,7 @@ uint32_t* madt_ioapic_base_addr = NULL;
1515
uint8_t madt_ioapic_count = 0;
1616

1717
void parse_madt() {
18-
madt_header_t* madt = (madt_header_t*) find_SDT((char*) "APIC");
18+
madt_header_t* madt = (madt_header_t*) find_SDT((char*) "APIC", 0);
1919
if (madt == NULL) {
2020
debugf("Failed to parse madt!");
2121
return;
@@ -32,16 +32,16 @@ void parse_madt() {
3232
case 0: // Processor local apic
3333
{
3434
madt_local_processor_t* processor = (madt_local_processor_t*) record;
35-
madt_lapic_ids = vmm_resize(sizeof(uint8_t), madt_lapic_count, madt_lapic_count + 1, madt_lapic_ids);
35+
madt_lapic_ids = krealloc(madt_lapic_ids, sizeof(uint8_t) * (madt_lapic_count + 1));
3636
madt_lapic_ids[madt_lapic_count++] = processor->apic_id;
3737
}
3838
break;
3939

4040
case 1: // I/O apic
4141
{
4242
madt_io_apic_t* ioapic = (madt_io_apic_t*) record;
43-
madt_ioapic_ids = vmm_resize(sizeof(uint8_t), madt_ioapic_count, madt_ioapic_count + 1, madt_ioapic_ids);
44-
madt_ioapic_base_addr = vmm_resize(sizeof(uint32_t), madt_ioapic_count, madt_ioapic_count + 1, madt_ioapic_base_addr);
43+
madt_ioapic_ids = krealloc(madt_ioapic_ids, sizeof(uint8_t) * (madt_ioapic_count + 1));
44+
madt_ioapic_base_addr = krealloc(madt_ioapic_base_addr, sizeof(uint32_t) * (madt_ioapic_count + 1));
4545
madt_ioapic_ids[madt_ioapic_count] = ioapic->io_apic_id;
4646
madt_ioapic_base_addr[madt_ioapic_count++] = ioapic->io_apic_address;
4747
}

mckrnl/core/driver/acpi/power.c

Lines changed: 0 additions & 67 deletions
This file was deleted.

0 commit comments

Comments
 (0)