From a121ee05007fd44747265ba50871b513754f5789 Mon Sep 17 00:00:00 2001 From: eee <719747958@qq.com> Date: Fri, 5 Jan 2024 10:19:52 +0800 Subject: [PATCH 1/2] readme.md added --- README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 00000000..305ba24d --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# Brief Intro + +LMFAO, we do this shit just for fun :) \ No newline at end of file From 242903f5e2697f4db6d3d8958c97f41325671d86 Mon Sep 17 00:00:00 2001 From: eee <719747958@qq.com> Date: Thu, 18 Jan 2024 16:30:33 +0800 Subject: [PATCH 2/2] read and create --- doc/~$$绘图1.~vsdx | Bin 0 -> 4096 bytes doc/学习报告.md | 4 +++- doc/泛读报告.docx | Bin 0 -> 29305 bytes doc/绘图1.vsdx | Bin 42782 -> 43149 bytes 4 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 doc/~$$绘图1.~vsdx create mode 100644 doc/泛读报告.docx diff --git a/doc/~$$绘图1.~vsdx b/doc/~$$绘图1.~vsdx new file mode 100644 index 0000000000000000000000000000000000000000..786dca02036e27af03d11d2c7c980619578f98c5 GIT binary patch literal 4096 zcmca`Uhu)fjZzO8(10BSGsD0CoD6J8;*3Bx6O1pwz`zP*gT(&*|NkE(%nZap<|r6K zA@CRIR#5znf{_^lK@9moSi+#d;L4B(q>C6TL0Oq-AOZi2;JVuj2Z3>hpL%o)fvgHW4=Sa%FnbpVmu BQ@{WK literal 0 HcmV?d00001 diff --git a/doc/学习报告.md b/doc/学习报告.md index 4503a12e..533c3037 100644 --- a/doc/学习报告.md +++ b/doc/学习报告.md @@ -19,7 +19,9 @@ OpenHarmony liteos 的进程实现方式与 linux 类似,都是通过父进程 ## 2.1 一个完备的进程管理系统应当具备 -### (1) 进程调度 +### (1) 进程调度 + +鸿蒙内核的进程采用抢占式调度机制,支持时间片轮转调度方式和FIFO调度机制 ### (2) 进程创建 diff --git a/doc/泛读报告.docx b/doc/泛读报告.docx new file mode 100644 index 0000000000000000000000000000000000000000..84a1becd77563e3829d0789102259ae36df8de8a GIT binary patch literal 29305 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 )6)^T7@_UPIZL8AuP%N<6cNm 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 literal 0 HcmV?d00001 diff --git a/doc/绘图1.vsdx b/doc/绘图1.vsdx index 9ad9bee402100b5d37376cbb4114b1c5fe7b73ce..482066122cc8c3c5c8a75abeea5223ff83608821 100644 GIT binary patch delta 12250 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 delta 11876 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