From a307b4b61f4a885da36e4e330d7d16b99392dcf2 Mon Sep 17 00:00:00 2001 From: jlam55555 Date: Sun, 3 Nov 2024 13:30:37 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20jlam5555?= =?UTF-8?q?5/hmmos@231c0ac665d58e0745dbb32604216a6237e9d36f=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- annotated.html | 42 +-- assert_8h.html | 15 +- assert_8h__dep__incl.map | 5 +- assert_8h__dep__incl.md5 | 2 +- assert_8h__dep__incl.png | Bin 18400 -> 21452 bytes assert_8h__incl.map | 3 +- assert_8h__incl.md5 | 2 +- assert_8h__incl.png | Bin 3335 -> 5367 bytes assert_8h_source.html | 22 +- classes.html | 19 +- classmem_1_1phys_1_1PageFrameAllocator.html | 16 + classmem_1_1phys_1_1SimplePFA.html | 13 + classnonstd_1_1string__view-members.html | 17 +- classnonstd_1_1string__view.html | 13 +- classsched_1_1KernelThread-members.html | 102 ++++++ classsched_1_1KernelThread.html | 242 ++++++++++++++ classsched_1_1KernelThread__coll__graph.map | 4 + classsched_1_1KernelThread__coll__graph.md5 | 1 + classsched_1_1KernelThread__coll__graph.png | Bin 0 -> 4675 bytes ...ssched_1_1KernelThread__inherit__graph.map | 4 + ...ssched_1_1KernelThread__inherit__graph.md5 | 1 + ...ssched_1_1KernelThread__inherit__graph.png | Bin 0 -> 4675 bytes classsched_1_1Scheduler-members.html | 95 ++++++ classsched_1_1Scheduler.html | 229 +++++++++++++ classsched_1_1Scheduler__inherit__graph.map | 4 + classsched_1_1Scheduler__inherit__graph.md5 | 1 + classsched_1_1Scheduler__inherit__graph.png | Bin 0 -> 3518 bytes classsched_1_1TestScheduler-members.html | 98 ++++++ classsched_1_1TestScheduler.html | 144 +++++++++ classsched_1_1TestScheduler__coll__graph.map | 4 + classsched_1_1TestScheduler__coll__graph.md5 | 1 + classsched_1_1TestScheduler__coll__graph.png | Bin 0 -> 3507 bytes ...sched_1_1TestScheduler__inherit__graph.map | 4 + ...sched_1_1TestScheduler__inherit__graph.md5 | 1 + ...sched_1_1TestScheduler__inherit__graph.png | Bin 0 -> 3507 bytes classutil_1_1IntrusiveListHead-members.html | 14 +- classutil_1_1IntrusiveListHead.html | 26 +- ...cle.html => concept_0d27_1_1IsBicycle.html | 10 +- ...0000_000013.html => dir_000000_000015.html | 0 ...0004_000013.html => dir_000004_000015.html | 0 dir_000005_000000.html | 2 +- dir_000005_000002.html | 2 +- dir_000005_000004.html | 2 +- dir_000005_000006.html | 2 +- dir_000005_000008.html | 2 +- dir_000005_000011.html | 83 +++++ dir_000006_000002.html | 2 +- ...0006_000013.html => dir_000006_000015.html | 2 +- dir_000011_000000.html | 83 +++++ dir_000011_000002.html | 83 +++++ dir_000011_000006.html | 83 +++++ dir_000011_000008.html | 83 +++++ dir_000011_000015.html | 83 +++++ dir_000012_000005.html | 6 +- ...0012_000002.html => dir_000014_000002.html | 2 +- ...0012_000003.html => dir_000014_000003.html | 0 dir_000014_000005.html | 6 +- dir_000015_000002.html | 83 +++++ dir_000016_000005.html | 83 +++++ ...0015_000004.html => dir_000017_000004.html | 0 ...0015_000008.html => dir_000017_000008.html | 0 ...0015_000013.html => dir_000017_000015.html | 0 dir_117812821d51f9c480ee192f0868208a.html | 2 +- dir_117812821d51f9c480ee192f0868208a_dep.map | 2 +- dir_117812821d51f9c480ee192f0868208a_dep.md5 | 2 +- dir_120ed4da3e3217b1e7fc0b4f48568e79.html | 34 +- dir_120ed4da3e3217b1e7fc0b4f48568e79_dep.map | 32 +- dir_120ed4da3e3217b1e7fc0b4f48568e79_dep.md5 | 2 +- dir_120ed4da3e3217b1e7fc0b4f48568e79_dep.png | Bin 12053 -> 13402 bytes dir_27a2dc5efa6107408daaffbb598ca399.html | 3 + dir_68267d1309a1af8e8297ef4c3efbcdba.html | 8 +- dir_68267d1309a1af8e8297ef4c3efbcdba_dep.map | 8 +- dir_68267d1309a1af8e8297ef4c3efbcdba_dep.md5 | 2 +- dir_68267d1309a1af8e8297ef4c3efbcdba_dep.png | Bin 11681 -> 11780 bytes dir_76e3dd4d2fa719e8d3b096e9aa563982.html | 6 +- dir_76e3dd4d2fa719e8d3b096e9aa563982_dep.map | 6 +- dir_76e3dd4d2fa719e8d3b096e9aa563982_dep.md5 | 2 +- dir_80965eb3ba1160063c01e5ec79f497d2.html | 7 +- dir_80965eb3ba1160063c01e5ec79f497d2_dep.map | 4 +- dir_80965eb3ba1160063c01e5ec79f497d2_dep.md5 | 2 +- dir_80965eb3ba1160063c01e5ec79f497d2_dep.png | Bin 4760 -> 4805 bytes dir_9981370fe3aa0468bbb5d4f18816adb7.html | 112 +++++++ dir_9981370fe3aa0468bbb5d4f18816adb7_dep.map | 14 + dir_9981370fe3aa0468bbb5d4f18816adb7_dep.md5 | 1 + dir_9981370fe3aa0468bbb5d4f18816adb7_dep.png | Bin 0 -> 10855 bytes dir_aee9ab6fedb00380c94a3a6c6b09f99a.html | 2 +- dir_aee9ab6fedb00380c94a3a6c6b09f99a_dep.map | 2 +- dir_aee9ab6fedb00380c94a3a6c6b09f99a_dep.md5 | 2 +- dir_b39494742a4b289002c932da1c6725ae.html | 12 +- dir_b39494742a4b289002c932da1c6725ae_dep.map | 6 +- dir_b39494742a4b289002c932da1c6725ae_dep.md5 | 2 +- dir_bed20eb59341ae51146510a8061b4d66.html | 2 + dir_bed20eb59341ae51146510a8061b4d66_dep.map | 2 + dir_bed20eb59341ae51146510a8061b4d66_dep.md5 | 2 +- dir_bed20eb59341ae51146510a8061b4d66_dep.png | Bin 1390 -> 2719 bytes dir_cbd7f246bdf7dc0a50281a272327e6ed.html | 60 ++-- dir_cbd7f246bdf7dc0a50281a272327e6ed_dep.map | 58 ++-- dir_cbd7f246bdf7dc0a50281a272327e6ed_dep.md5 | 2 +- dir_cbd7f246bdf7dc0a50281a272327e6ed_dep.png | Bin 33969 -> 51023 bytes dir_fc32c44ee89794e6909b1f791b118dd1.html | 97 ++++++ dir_fc32c44ee89794e6909b1f791b118dd1_dep.map | 6 + dir_fc32c44ee89794e6909b1f791b118dd1_dep.md5 | 1 + dir_fc32c44ee89794e6909b1f791b118dd1_dep.png | Bin 0 -> 3066 bytes files.html | 28 +- functions.html | 6 + functions_func.html | 5 + functions_rela.html | 1 + hierarchy.html | 37 ++- inherit_graph_16.map | 3 +- inherit_graph_16.md5 | 2 +- inherit_graph_16.png | Bin 1952 -> 2151 bytes inherit_graph_17.map | 2 +- inherit_graph_17.md5 | 2 +- inherit_graph_17.png | Bin 1590 -> 1952 bytes inherit_graph_18.map | 2 +- inherit_graph_18.md5 | 2 +- inherit_graph_18.png | Bin 1262 -> 1590 bytes inherit_graph_19.map | 2 +- inherit_graph_19.md5 | 2 +- inherit_graph_19.png | Bin 3922 -> 1262 bytes inherit_graph_20.map | 5 +- inherit_graph_20.md5 | 2 +- inherit_graph_20.png | Bin 6376 -> 4011 bytes inherit_graph_21.map | 2 +- inherit_graph_21.md5 | 2 +- inherit_graph_21.png | Bin 2724 -> 3922 bytes inherit_graph_22.map | 4 +- inherit_graph_22.md5 | 2 +- inherit_graph_22.png | Bin 3022 -> 6376 bytes inherit_graph_23.map | 3 + inherit_graph_23.md5 | 1 + inherit_graph_23.png | Bin 0 -> 2724 bytes inherit_graph_24.map | 3 + inherit_graph_24.md5 | 1 + inherit_graph_24.png | Bin 0 -> 3806 bytes inherit_graph_25.map | 3 + inherit_graph_25.md5 | 1 + inherit_graph_25.png | Bin 0 -> 2850 bytes inherits.html | 35 +- intrusive__list_8h.html | 20 +- intrusive__list_8h__dep__incl.map | 7 +- intrusive__list_8h__dep__incl.md5 | 2 +- intrusive__list_8h__dep__incl.png | Bin 7876 -> 11158 bytes intrusive__list_8h__incl.map | 11 +- intrusive__list_8h__incl.md5 | 2 +- intrusive__list_8h__incl.png | Bin 9040 -> 11093 bytes intrusive__list_8h_source.html | 303 +++++++++--------- kmalloc_8h.html | 133 ++++++++ kmalloc_8h__incl.map | 5 + kmalloc_8h__incl.md5 | 1 + kmalloc_8h__incl.png | Bin 0 -> 5177 bytes kmalloc_8h_source.html | 113 +++++++ kthread_8h.html | 170 ++++++++++ kthread_8h__incl.map | 9 + kthread_8h__incl.md5 | 1 + kthread_8h__incl.png | Bin 0 -> 13198 bytes kthread_8h_source.html | 173 ++++++++++ libc__symbols_8cc.html | 110 +++++++ libc__symbols_8cc__incl.map | 4 + libc__symbols_8cc__incl.md5 | 1 + libc__symbols_8cc__incl.png | Bin 0 -> 3750 bytes mbr_8h.html | 17 +- mbr_8h__incl.map | 17 +- mbr_8h__incl.md5 | 2 +- mbr_8h__incl.png | Bin 20124 -> 22597 bytes md_notes_dir_layout.html | 1 + page__frame__allocator_8h.html | 3 +- page__frame__allocator_8h__incl.map | 15 +- page__frame__allocator_8h__incl.md5 | 2 +- page__frame__allocator_8h__incl.png | Bin 33369 -> 35473 bytes page__frame__table_8h.html | 3 +- page__frame__table_8h__incl.map | 15 +- page__frame__table_8h__incl.md5 | 2 +- page__frame__table_8h__incl.png | Bin 30332 -> 32428 bytes page__frame__table_8h_source.html | 2 +- perf_8h.html | 14 +- perf_8h__dep__incl.map | 14 +- perf_8h__dep__incl.md5 | 2 +- perf_8h__dep__incl.png | Bin 11746 -> 33809 bytes search/all_0.js | 2 +- search/all_1.js | 2 +- search/all_10.js | 7 +- search/all_12.js | 21 +- search/all_13.js | 4 +- search/all_3.js | 15 +- search/all_5.js | 3 +- search/all_a.js | 16 +- search/all_b.js | 5 +- search/all_c.js | 3 +- search/all_e.js | 5 +- search/all_f.js | 3 +- search/classes_4.js | 8 +- search/classes_5.js | 2 +- search/classes_6.js | 7 +- search/classes_7.js | 7 +- search/classes_8.js | 4 +- search/classes_9.js | 6 +- search/classes_a.js | 6 + search/concepts_0.js | 2 +- search/files_4.js | 4 +- search/files_5.js | 5 +- search/files_6.js | 3 +- search/files_7.js | 6 +- search/files_8.js | 7 +- search/files_9.js | 4 +- search/files_a.js | 3 +- search/files_b.js | 4 + search/functions_0.js | 2 +- search/functions_2.js | 6 +- search/functions_3.js | 10 +- search/functions_4.js | 4 +- search/functions_5.js | 9 +- search/functions_6.js | 6 +- search/functions_7.js | 9 +- search/functions_8.js | 7 +- search/functions_9.js | 3 +- search/functions_a.js | 9 + search/functions_b.js | 7 + search/functions_c.js | 8 + search/related_1.js | 2 +- search/related_2.js | 4 + search/searchdata.js | 8 +- serial_8h.html | 10 +- serial_8h__incl.map | 10 +- serial_8h__incl.md5 | 2 +- serial_8h__incl.png | Bin 11545 -> 13381 bytes stack_8h.html | 170 ++++++++++ stack_8h_source.html | 104 ++++++ string__view_8h.html | 6 +- string__view_8h__incl.map | 5 +- string__view_8h__incl.md5 | 2 +- string__view_8h__incl.png | Bin 19740 -> 22448 bytes string__view_8h_source.html | 178 +++++----- structtest_1_1detail_1_1TestInfo-members.html | 1 + structtest_1_1detail_1_1TestInfo.html | 7 + ...IntrusiveListHead_1_1IterImpl-members.html | 100 ++++++ ...util_1_1IntrusiveListHead_1_1IterImpl.html | 63 ++-- ...IntrusiveListHead_1_1Iterator-members.html | 99 ------ test_8h.html | 18 +- test_8h__incl.map | 9 +- test_8h__incl.md5 | 2 +- test_8h__incl.png | Bin 23554 -> 25693 bytes test_8h_source.html | 137 ++++---- timer_8h.html | 113 +++++++ timer_8h__incl.map | 4 + timer_8h__incl.md5 | 1 + timer_8h__incl.png | Bin 0 -> 3908 bytes timer_8h_source.html | 98 ++++++ virt_8h.html | 8 +- virt_8h_source.html | 2 +- 250 files changed, 4201 insertions(+), 889 deletions(-) create mode 100644 classsched_1_1KernelThread-members.html create mode 100644 classsched_1_1KernelThread.html create mode 100644 classsched_1_1KernelThread__coll__graph.map create mode 100644 classsched_1_1KernelThread__coll__graph.md5 create mode 100644 classsched_1_1KernelThread__coll__graph.png create mode 100644 classsched_1_1KernelThread__inherit__graph.map create mode 100644 classsched_1_1KernelThread__inherit__graph.md5 create mode 100644 classsched_1_1KernelThread__inherit__graph.png create mode 100644 classsched_1_1Scheduler-members.html create mode 100644 classsched_1_1Scheduler.html create mode 100644 classsched_1_1Scheduler__inherit__graph.map create mode 100644 classsched_1_1Scheduler__inherit__graph.md5 create mode 100644 classsched_1_1Scheduler__inherit__graph.png create mode 100644 classsched_1_1TestScheduler-members.html create mode 100644 classsched_1_1TestScheduler.html create mode 100644 classsched_1_1TestScheduler__coll__graph.map create mode 100644 classsched_1_1TestScheduler__coll__graph.md5 create mode 100644 classsched_1_1TestScheduler__coll__graph.png create mode 100644 classsched_1_1TestScheduler__inherit__graph.map create mode 100644 classsched_1_1TestScheduler__inherit__graph.md5 create mode 100644 classsched_1_1TestScheduler__inherit__graph.png rename concept_0d25_1_1IsBicycle.html => concept_0d27_1_1IsBicycle.html (85%) rename dir_000000_000013.html => dir_000000_000015.html (100%) rename dir_000004_000013.html => dir_000004_000015.html (100%) create mode 100644 dir_000005_000011.html rename dir_000006_000013.html => dir_000006_000015.html (79%) create mode 100644 dir_000011_000000.html create mode 100644 dir_000011_000002.html create mode 100644 dir_000011_000006.html create mode 100644 dir_000011_000008.html create mode 100644 dir_000011_000015.html rename dir_000012_000002.html => dir_000014_000002.html (82%) rename dir_000012_000003.html => dir_000014_000003.html (100%) create mode 100644 dir_000015_000002.html create mode 100644 dir_000016_000005.html rename dir_000015_000004.html => dir_000017_000004.html (100%) rename dir_000015_000008.html => dir_000017_000008.html (100%) rename dir_000015_000013.html => dir_000017_000015.html (100%) create mode 100644 dir_9981370fe3aa0468bbb5d4f18816adb7.html create mode 100644 dir_9981370fe3aa0468bbb5d4f18816adb7_dep.map create mode 100644 dir_9981370fe3aa0468bbb5d4f18816adb7_dep.md5 create mode 100644 dir_9981370fe3aa0468bbb5d4f18816adb7_dep.png create mode 100644 dir_fc32c44ee89794e6909b1f791b118dd1.html create mode 100644 dir_fc32c44ee89794e6909b1f791b118dd1_dep.map create mode 100644 dir_fc32c44ee89794e6909b1f791b118dd1_dep.md5 create mode 100644 dir_fc32c44ee89794e6909b1f791b118dd1_dep.png create mode 100644 inherit_graph_23.map create mode 100644 inherit_graph_23.md5 create mode 100644 inherit_graph_23.png create mode 100644 inherit_graph_24.map create mode 100644 inherit_graph_24.md5 create mode 100644 inherit_graph_24.png create mode 100644 inherit_graph_25.map create mode 100644 inherit_graph_25.md5 create mode 100644 inherit_graph_25.png create mode 100644 kmalloc_8h.html create mode 100644 kmalloc_8h__incl.map create mode 100644 kmalloc_8h__incl.md5 create mode 100644 kmalloc_8h__incl.png create mode 100644 kmalloc_8h_source.html create mode 100644 kthread_8h.html create mode 100644 kthread_8h__incl.map create mode 100644 kthread_8h__incl.md5 create mode 100644 kthread_8h__incl.png create mode 100644 kthread_8h_source.html create mode 100644 libc__symbols_8cc.html create mode 100644 libc__symbols_8cc__incl.map create mode 100644 libc__symbols_8cc__incl.md5 create mode 100644 libc__symbols_8cc__incl.png create mode 100644 search/classes_a.js create mode 100644 search/files_b.js create mode 100644 search/functions_a.js create mode 100644 search/functions_b.js create mode 100644 search/functions_c.js create mode 100644 search/related_2.js create mode 100644 stack_8h.html create mode 100644 stack_8h_source.html create mode 100644 structutil_1_1IntrusiveListHead_1_1IterImpl-members.html rename structutil_1_1IntrusiveListHead_1_1Iterator.html => structutil_1_1IntrusiveListHead_1_1IterImpl.html (54%) delete mode 100644 structutil_1_1IntrusiveListHead_1_1Iterator-members.html create mode 100644 timer_8h.html create mode 100644 timer_8h__incl.map create mode 100644 timer_8h__incl.md5 create mode 100644 timer_8h__incl.png create mode 100644 timer_8h_source.html diff --git a/annotated.html b/annotated.html index 98f6417..3c68eb5 100644 --- a/annotated.html +++ b/annotated.html @@ -88,25 +88,29 @@  Nnonstd  Cformat_spec  Cstring_viewNonstd version of std::string_view - Nserial - CSerialA very simple abstraction of a serial device - Ntest - Ndetail - CTestInfoTest descriptor - CTestFixtureFor use with TEST*_WITH_FIXTURE() - Nutil - CIntrusiveListHeadA C++ version of the common linked list data structure (see man 3 list) - CIterator - Cbp_req_header - Cbp_req_memory_map - Ccpuid_features - Ce820_mm_entry - CInterruptFrameStack frame generated when entering an interrupt - Cmbr_partition_desc - Cpage_directory_entry - Cpage_directory_entry_4mb - Cpage_table_entry - CRegisterFrameStack frame generated by the pusha instruction + Nsched + CKernelThreadInternal representation of a kernel thread + CScheduler + CTestScheduler + Nserial + CSerialA very simple abstraction of a serial device + Ntest + Ndetail + CTestInfoTest descriptor + CTestFixtureFor use with TEST*_WITH_FIXTURE() + Nutil + CIntrusiveListHeadA C++ version of the common linked list data structure (see man 3 list) + CIterImpl + Cbp_req_header + Cbp_req_memory_map + Ccpuid_features + Ce820_mm_entry + CInterruptFrameStack frame generated when entering an interrupt + Cmbr_partition_desc + Cpage_directory_entry + Cpage_directory_entry_4mb + Cpage_table_entry + CRegisterFrameStack frame generated by the pusha instruction diff --git a/assert_8h.html b/assert_8h.html index 82e1612..aebdd2b 100644 --- a/assert_8h.html +++ b/assert_8h.html @@ -82,14 +82,16 @@

Runtime assertion macros. Note that static_assert will remain as it is. More...

-
#include <cassert>
+
#include "perf.h"
+#include <cassert>
Include dependency graph for assert.h:
- + +
@@ -100,9 +102,10 @@ - + - + +
@@ -110,7 +113,7 @@ - + - +

Macros

#define ASSERT(...)   assert((__VA_ARGS__))
#define ASSERT(...)   assert(likely(__VA_ARGS__))
 Run-time assertion.
 
@@ -132,7 +135,7 @@

 

...)   assert((__VA_ARGS__))   assert(likely(__VA_ARGS__))
diff --git a/assert_8h__dep__incl.map b/assert_8h__dep__incl.map index be607d0..b2ea78b 100644 --- a/assert_8h__dep__incl.map +++ b/assert_8h__dep__incl.map @@ -2,7 +2,8 @@ - + - + + diff --git a/assert_8h__dep__incl.md5 b/assert_8h__dep__incl.md5 index 28883d0..9c11092 100644 --- a/assert_8h__dep__incl.md5 +++ b/assert_8h__dep__incl.md5 @@ -1 +1 @@ -ba2d8ab2548649c0b861953b575b1e2b \ No newline at end of file +0d868d74d5248224d22966f3dbd26c9a \ No newline at end of file diff --git a/assert_8h__dep__incl.png b/assert_8h__dep__incl.png index d771a444c32740a97cde7ff6694c76648917bf98..afa2933e2b0714f25d41f01873441e4cf7a9b563 100644 GIT binary patch literal 21452 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 u4CH);=g`I(s%KJ5d6 - + + diff --git a/assert_8h__incl.md5 b/assert_8h__incl.md5 index b4793b6..d38442e 100644 --- a/assert_8h__incl.md5 +++ b/assert_8h__incl.md5 @@ -1 +1 @@ -c4069cb0268ca79ce0a8a9747712fb21 \ No newline at end of file +5d1101bdf3ad4808ff2c9b55ce095d41 \ No newline at end of file diff --git a/assert_8h__incl.png b/assert_8h__incl.png index cebcf9da164a65046c57c3ae540d3d4d77add409..50575691a53dafc010afddfa5df4a0970c71f2b0 100644 GIT binary patch literal 5367 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 M)H2kp)v$l_KPV564*&oF literal 3335 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 XzDd)bo^S?kHXu7ICrdp1)^Gm;mzHm} diff --git a/assert_8h_source.html b/assert_8h_source.html index b9ec675..01f5fd9 100644 --- a/assert_8h_source.html +++ b/assert_8h_source.html @@ -78,16 +78,18 @@

Go to the documentation of this file.
1#pragma once
-
2#include <cassert>
-
3
-
7
-
15#define ASSERT(...) assert((__VA_ARGS__))
-
16
-
19#ifdef DEBUG
-
20#define DEBUG_ASSERT assert
-
21#else
-
22#define DEBUG_ASSERT(...)
-
23#endif
+
2#include "perf.h"
+
3#include <cassert>
+
4
+
8
+
16#define ASSERT(...) assert(likely(__VA_ARGS__))
+
17
+
20#ifdef DEBUG
+
21#define DEBUG_ASSERT assert
+
22#else
+
23#define DEBUG_ASSERT(...)
+
24#endif
+
Utilities for performance optimization.