<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kmi/src/orphanage.c, branch master</title>
<subtitle>ACTIVE - Kernel with migrating threads as IPC</subtitle>
<id>https://metanimi.dy.fi/cgit/kmi/atom?h=master</id>
<link rel='self' href='https://metanimi.dy.fi/cgit/kmi/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://metanimi.dy.fi/cgit/kmi/'/>
<updated>2024-10-29T22:57:33Z</updated>
<entry>
<title>most of the way to passing tests</title>
<updated>2024-10-29T22:57:33Z</updated>
<author>
<name>Kimplul</name>
<email>kimi.h.kuparinen@gmail.com</email>
</author>
<published>2024-10-29T22:57:33Z</published>
<link rel='alternate' type='text/html' href='https://metanimi.dy.fi/cgit/kmi/commit/?id=44a73ecab6e91519627786a5101cd4f1a2f2b0d7'/>
<id>urn:sha1:44a73ecab6e91519627786a5101cd4f1a2f2b0d7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>start moving towards threads always being in rpc</title>
<updated>2024-10-29T19:17:31Z</updated>
<author>
<name>Kimplul</name>
<email>kimi.h.kuparinen@gmail.com</email>
</author>
<published>2024-10-29T19:17:31Z</published>
<link rel='alternate' type='text/html' href='https://metanimi.dy.fi/cgit/kmi/commit/?id=5976ad390a15726c3ddfacf8c8b282c8350f9554'/>
<id>urn:sha1:5976ad390a15726c3ddfacf8c8b282c8350f9554</id>
<content type='text'>
</content>
</entry>
<entry>
<title>improve killing processes/threads, test</title>
<updated>2024-08-26T15:51:10Z</updated>
<author>
<name>Kimplul</name>
<email>kimi.h.kuparinen@gmail.com</email>
</author>
<published>2024-08-26T15:51:10Z</published>
<link rel='alternate' type='text/html' href='https://metanimi.dy.fi/cgit/kmi/commit/?id=b25156373cd89792b1c457b77699bb7f9beb430d'/>
<id>urn:sha1:b25156373cd89792b1c457b77699bb7f9beb430d</id>
<content type='text'>
+ Remove sys_kill() as we should be using a two-stage process where a
  thread is first orphaned by sys_detach(), and then the thread itself
  calls sys_exit() after it has done all necessary cleanup in init.
</content>
</entry>
<entry>
<title>change sys_ret handling to always include id</title>
<updated>2024-08-22T10:19:50Z</updated>
<author>
<name>Kimplul</name>
<email>kimi.h.kuparinen@gmail.com</email>
</author>
<published>2024-08-22T10:19:50Z</published>
<link rel='alternate' type='text/html' href='https://metanimi.dy.fi/cgit/kmi/commit/?id=66b39eb7ce9605cbb70defdca7f0eb144855ddcd'/>
<id>urn:sha1:66b39eb7ce9605cbb70defdca7f0eb144855ddcd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>add orphan checking to timer and irq handling</title>
<updated>2024-07-08T14:38:59Z</updated>
<author>
<name>Kimplul</name>
<email>kimi.h.kuparinen@gmail.com</email>
</author>
<published>2024-07-08T14:38:59Z</published>
<link rel='alternate' type='text/html' href='https://metanimi.dy.fi/cgit/kmi/commit/?id=7e828ec1e1479ff9a8afe845539d08ca0dfada5f'/>
<id>urn:sha1:7e828ec1e1479ff9a8afe845539d08ca0dfada5f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>simplify assertions</title>
<updated>2024-07-07T04:02:46Z</updated>
<author>
<name>Kimplul</name>
<email>kimi.h.kuparinen@gmail.com</email>
</author>
<published>2024-07-07T04:02:46Z</published>
<link rel='alternate' type='text/html' href='https://metanimi.dy.fi/cgit/kmi/commit/?id=b97967ab660243b723f246db03c2e4a82e125f3f'/>
<id>urn:sha1:b97967ab660243b723f246db03c2e4a82e125f3f</id>
<content type='text'>
+ No real point having multiple different levels of assertions, just say
  you assert something and be done with it
</content>
</entry>
<entry>
<title>adjust stack handling</title>
<updated>2024-07-06T17:50:36Z</updated>
<author>
<name>Kimplul</name>
<email>kimi.h.kuparinen@gmail.com</email>
</author>
<published>2024-07-06T17:50:36Z</published>
<link rel='alternate' type='text/html' href='https://metanimi.dy.fi/cgit/kmi/commit/?id=9c0f26d26366ff7def20d5be6aff5e0f93976ad6'/>
<id>urn:sha1:9c0f26d26366ff7def20d5be6aff5e0f93976ad6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>generalize orphants</title>
<updated>2024-07-04T19:52:47Z</updated>
<author>
<name>Kimplul</name>
<email>kimi.h.kuparinen@gmail.com</email>
</author>
<published>2024-07-04T19:52:47Z</published>
<link rel='alternate' type='text/html' href='https://metanimi.dy.fi/cgit/kmi/commit/?id=fdbc5adf83741d7e3af0c3f0ffdb59bdf42493b6'/>
<id>urn:sha1:fdbc5adf83741d7e3af0c3f0ffdb59bdf42493b6</id>
<content type='text'>
+ Allow threads to make themselves become orphants
</content>
</entry>
<entry>
<title>add zombie and orphan threads</title>
<updated>2024-07-04T16:25:12Z</updated>
<author>
<name>Kimplul</name>
<email>kimi.h.kuparinen@gmail.com</email>
</author>
<published>2024-07-04T16:25:12Z</published>
<link rel='alternate' type='text/html' href='https://metanimi.dy.fi/cgit/kmi/commit/?id=07c2376702fb3d508d6ffad6b0ce93b83972ad6e'/>
<id>urn:sha1:07c2376702fb3d508d6ffad6b0ce93b83972ad6e</id>
<content type='text'>
+ Should write this down somewhere but the idea is that when a process
  gets killed, it frees all the memory it can, making all threads within
  that process orphans. Orphaned threads are assigned to the init
  process, which will generally call exit() on each one. Zombie threads
  are threads that own some bit of shared data, and whose reference
  count is above zero. They may not be swapped to or called, even though
  they take up space in thread map and reserve their thread ID.
</content>
</entry>
</feed>
