<feed xmlns='http://www.w3.org/2005/Atom'>
<title>pub/teachos/kernel.git/arch/x86_64/src/boot/initialize_runtime.cpp, branch develop</title>
<subtitle>An educational OS kernel</subtitle>
<link rel='alternate' type='text/html' href='http://source.arknet.ch/pub/teachos/kernel.git/'/>
<entry>
<title>x86_64: use p1204 project layout</title>
<updated>2026-04-29T07:05:04+00:00</updated>
<author>
<name>Felix Morgner</name>
<email>felix.morgner@ost.ch</email>
</author>
<published>2026-04-16T08:29:30+00:00</published>
<link rel='alternate' type='text/html' href='http://source.arknet.ch/pub/teachos/kernel.git/commit/?id=1b964278762dde86b0b737bd9a34fec569339f54'/>
<id>1b964278762dde86b0b737bd9a34fec569339f54</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>chore: restructure namespaces</title>
<updated>2026-01-16T12:36:38+00:00</updated>
<author>
<name>Felix Morgner</name>
<email>felix.morgner@ost.ch</email>
</author>
<published>2026-01-16T12:36:38+00:00</published>
<link rel='alternate' type='text/html' href='http://source.arknet.ch/pub/teachos/kernel.git/commit/?id=7d6f0ed063790042a808f4bf07c50d308b3f2de4'/>
<id>7d6f0ed063790042a808f4bf07c50d308b3f2de4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>x86_64/boot: fix section assignments in ld script</title>
<updated>2025-12-29T13:43:20+00:00</updated>
<author>
<name>Felix Morgner</name>
<email>felix.morgner@ost.ch</email>
</author>
<published>2025-12-29T13:43:20+00:00</published>
<link rel='alternate' type='text/html' href='http://source.arknet.ch/pub/teachos/kernel.git/commit/?id=fb1c180c431e3ac07ca56f53299edea316883842'/>
<id>fb1c180c431e3ac07ca56f53299edea316883842</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>build: enable linting</title>
<updated>2025-10-31T06:19:16+00:00</updated>
<author>
<name>Felix Morgner</name>
<email>felix.morgner@ost.ch</email>
</author>
<published>2025-10-31T06:19:16+00:00</published>
<link rel='alternate' type='text/html' href='http://source.arknet.ch/pub/teachos/kernel.git/commit/?id=b1143bde71bb029ac2bf7d08ba422fcdaedd56a6'/>
<id>b1143bde71bb029ac2bf7d08ba422fcdaedd56a6</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>chore: reformat source code</title>
<updated>2025-10-29T14:01:43+00:00</updated>
<author>
<name>Felix Morgner</name>
<email>felix.morgner@ost.ch</email>
</author>
<published>2025-10-29T14:01:43+00:00</published>
<link rel='alternate' type='text/html' href='http://source.arknet.ch/pub/teachos/kernel.git/commit/?id=b157e2c472d8bd67ac1656404a6a6ee821260f4b'/>
<id>b157e2c472d8bd67ac1656404a6a6ee821260f4b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>x86_64: implement robust C++ global initialization</title>
<updated>2025-07-24T12:28:23+00:00</updated>
<author>
<name>Felix Morgner</name>
<email>felix.morgner@ost.ch</email>
</author>
<published>2025-07-24T12:28:23+00:00</published>
<link rel='alternate' type='text/html' href='http://source.arknet.ch/pub/teachos/kernel.git/commit/?id=f62b05c93c6c539d899d2656c0638d404a036f1a'/>
<id>f62b05c93c6c539d899d2656c0638d404a036f1a</id>
<content type='text'>
Implement a comprehensive mechanism to ensure correct C++ runtime
initialization before the kernel main function is called. This replaces
the previous, incomplete reliance on an `_init` function.

The new design robustly handles both legacy `.ctors` and modern
`.init_array` initialization schemes used by the GNU toolchain. A single
C++ function, `invoke_global_constructors`, now iterates through both
arrays of function pointers to ensure all types of global initializers
are executed.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Implement a comprehensive mechanism to ensure correct C++ runtime
initialization before the kernel main function is called. This replaces
the previous, incomplete reliance on an `_init` function.

The new design robustly handles both legacy `.ctors` and modern
`.init_array` initialization schemes used by the GNU toolchain. A single
C++ function, `invoke_global_constructors`, now iterates through both
arrays of function pointers to ensure all types of global initializers
are executed.
</pre>
</div>
</content>
</entry>
</feed>
