You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Note: Older versions might have `qemu-system-i386` instead of `qemu-system-x86`.
160
+
On older Ubuntu systems, the QEMU package might be named qemu-system-i386.
150
161
151
-
*[Back to the Table of Contents](#table-of-contents)*
162
+
### Compiling on ARM (e.g., Ubuntu ARM / Apple Silicon in a Linux VM)
163
+
164
+
To compile MentOS on **ARM-based Linux** (e.g., Ubuntu ARM or Apple Silicon using UTM/Parallels), you must install a cross-compilation toolchain for i386:
*[Back to the Table of Contents](#table-of-contents)*
166
195
196
+
---
197
+
167
198
## Generating the EXT2 filesystem
168
199
169
200
Generate the EXT2 filesystem with:
@@ -176,6 +207,8 @@ you just need to generate the filesystem once. If you change a `program` you nee
176
207
177
208
*[Back to the Table of Contents](#table-of-contents)*
178
209
210
+
---
211
+
179
212
## Running MentOS
180
213
181
214
Boot MentOS with qemu:
@@ -188,6 +221,8 @@ To login, use one of the usernames listed in `files/etc/passwd`.
188
221
189
222
*[Back to the Table of Contents](#table-of-contents)*
190
223
224
+
---
225
+
191
226
## Running MentOS from GRUB
192
227
193
228
For booting MentOS from GRUB in QEMU we need the following tools:
@@ -212,6 +247,8 @@ make qemu-grub
212
247
213
248
*[Back to the Table of Contents](#table-of-contents)*
214
249
250
+
---
251
+
215
252
## Running and adding new programs to MentOS
216
253
217
254
This section explains how to add a new program to MentOS, and also how to run programs in mentos. It also explains how to add new tests, which are located in the `programs/tests` folder.
@@ -278,6 +315,8 @@ However, the `/bin/tests` folder is not listed in `PATH`, so, if you want to exe
278
315
279
316
*[Back to the Table of Contents](#table-of-contents)*
280
317
318
+
---
319
+
281
320
## Kernel logging
282
321
283
322
The kernel provides ways of printing logging messages *from* inside the kernel code *to* the bash where you executed the `make qemu`.
@@ -338,6 +377,8 @@ This example sets the `__DEBUG_LEVEL__`, so that all the messages from `INFO` an
338
377
339
378
*[Back to the Table of Contents](#table-of-contents)*
340
379
380
+
---
381
+
341
382
## Change the scheduling algorithm
342
383
343
384
MentOS supports scheduling algorithms for aperiodic:
@@ -406,6 +447,8 @@ make qemu
406
447
407
448
*[Back to the Table of Contents](#table-of-contents)*
408
449
450
+
---
451
+
409
452
## Debugging the kernel
410
453
411
454
If you want to use GDB to debug MentOS, first you need to compile everything:
@@ -475,6 +518,8 @@ to connect to the running process.
475
518
476
519
*[Back to the Table of Contents](#table-of-contents)*
0 commit comments