Skip to content

Commit f41f5d8

Browse files
committed
page working!!!
1 parent 485418a commit f41f5d8

File tree

5 files changed

+11
-14
lines changed

5 files changed

+11
-14
lines changed

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
ARCH=i386
22

3-
CFLAGS=-I . -I ./include -I ./include/boot -fno-builtin
3+
CFLAGS=-I . -I ./include -I ./include/boot -fno-builtin -g
44

55
cobj = lib/kstdlib.o lib/kstdio.o src/kernel.o src/protect.o src/irpts.o arch/$(ARCH)/page.o
66
asmobj = boot/$(ARCH)/loader.o arch/$(ARCH)/irpts.o

arch/i386/page.c

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,11 @@ pgtbl_t g_pgtbl[2] __pgtbl;
1313
}
1414

1515
#define fill_page_tbl(idx, phy_addr_start, attr) { \
16-
int i = 0; int start = (phy_addr_start & 0xFFFFF000); \
17-
while (i < PG_TBL_SIZE) { \
18-
set_page_tbl(idx, i, start + (i << __PG_OFFSET__), attr); \
19-
++i; \
16+
int tbli = 0; int start = (phy_addr_start & 0xFFFFF000); \
17+
printk("phy_addr_start:%x\n", start); \
18+
while (tbli < PG_TBL_SIZE) { \
19+
set_page_tbl(idx, tbli, start + (tbli << __PG_OFFSET__), attr); \
20+
++tbli; \
2021
} \
2122
}
2223

@@ -40,7 +41,7 @@ void setup_paging(void) {
4041
}
4142

4243
i = 0;
43-
for (; i < 4; ++i) {
44+
for (; i < 2; ++i) {
4445
fill_page_tbl(i, PHY_ADDR_START + i << (__PG_OFFSET__ + 10), 0x07); /* pg0 0K - 4K */
4546
}
4647

linker.ld

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@ SECTIONS{
1717
ebss = . ;
1818
}
1919

20-
.pgdir.data ALIGN (0x04) : {
20+
.pgdir.data ALIGN (0x01000) : {
2121
*(.pgdir.data)
2222
}
23-
.pgtbl.data ALIGN (0x04) : {
23+
.pgtbl.data ALIGN (0x01000) : {
2424
*(.pgtbl.data)
2525
}
2626
_end = . ;

src/kernel.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ kernel_main (unsigned long addr, unsigned long magic)
144144

145145

146146
setup_gdt();
147+
setup_idt();
147148
setup_paging();
148149
printk("Hello CatOS!\n");
149-
setup_idt();
150150
}

tools/Makefile

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,5 @@ PREFIX=opt/
22
bochs:
33
PWD=`pwd`
44
cd bochs-2.4.5 && \
5-
LDFLAGS='-lpthread' ./configure --enable-debugger --enable-logging --enable-disasm --prefix=/usr/ --with-x11 --with-term && \
6-
<<<<<<< HEAD
7-
make -j 4 && make install
8-
=======
5+
LDFLAGS='-lpthread' ./configure --enable-logging --enable-disasm --prefix=/usr/ --with-x11 --with-term --enable-debugger && \
96
make -j 4 && sudo make install
10-
>>>>>>> 800ef0fd84f9b93949b8b128372172ece42332c6

0 commit comments

Comments
 (0)