<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
    <channel>
        <title>Xv6 - 标签 - zwyyy456&#39;s blog</title>
        <link>https://doit.tellm.eu.org/zh/tags/xv6/</link>
        <description>Xv6 - 标签 - zwyyy456&#39;s blog</description>
        <generator>Hugo -- gohugo.io</generator><language>zh</language><managingEditor>zwyyy456@hotmail.com (zwyyy456)</managingEditor>
            <webMaster>zwyyy456@hotmail.com (zwyyy456)</webMaster><copyright>This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.</copyright><lastBuildDate>Thu, 03 Aug 2023 13:53:24 &#43;0800</lastBuildDate><atom:link href="https://doit.tellm.eu.org/zh/tags/xv6/" rel="self" type="application/rss+xml" /><item>
    <title>Xv6 Lab11: Mmap</title>
    <link>https://doit.tellm.eu.org/zh/xv6-lab11/</link>
    <pubDate>Thu, 03 Aug 2023 13:53:24 &#43;0800</pubDate><author>
                    <name>zwyyy456</name>
                </author><guid>https://doit.tellm.eu.org/zh/xv6-lab11/</guid>
    <description><![CDATA[1 思路与实现添加系统调用就不多说了。 整体流程应该是这样的，lab 的提示中，要求我们定义一个 vma 结构体，vma 的定义如下；然后 lab 的提示要求我们声]]></description>
</item><item>
    <title>Xv6 Lab10: file system</title>
    <link>https://doit.tellm.eu.org/zh/xv6-lab10/</link>
    <pubDate>Tue, 01 Aug 2023 20:19:47 &#43;0800</pubDate><author>
                    <name>zwyyy456</name>
                </author><guid>https://doit.tellm.eu.org/zh/xv6-lab10/</guid>
    <description><![CDATA[1 Large files这个作业需要我们将 xv6 的最大文件大小从 12 + 256 Bytes 修改为 11 + 256 + 256 * 256 Bytes。 为了达成这个目标，我们需要使用二级索引块，对 inode 的 addrs]]></description>
</item><item>
    <title>Xv6 Lab9: Locks</title>
    <link>https://doit.tellm.eu.org/zh/xv6-lab9/</link>
    <pubDate>Sat, 29 Jul 2023 14:28:58 &#43;0800</pubDate><author>
                    <name>zwyyy456</name>
                </author><guid>https://doit.tellm.eu.org/zh/xv6-lab9/</guid>
    <description><![CDATA[1 Memory allocator这一题很简单，主要任务，就是为每个 cpu 维护一个空闲物理内存的链表 freelist，xv6 默认使用的结构体 kmem，其中包]]></description>
</item><item>
    <title>Mit6.s081 Lec15: xv6 的 logging system</title>
    <link>https://doit.tellm.eu.org/zh/mit6.s081-lec15/</link>
    <pubDate>Tue, 25 Jul 2023 16:48:39 &#43;0800</pubDate><author>
                    <name>zwyyy456</name>
                </author><guid>https://doit.tellm.eu.org/zh/mit6.s081-lec15/</guid>
    <description><![CDATA[1 Logging layerfile system 设计的一大重要问题就是 crash recovery。这是因为文件系统操作往往涉及向磁盘多次写入，而几次写入之后的 crash 可能导致磁盘上的文件系统处于]]></description>
</item><item>
    <title>MIT 6.S081 Lec14: File system</title>
    <link>https://doit.tellm.eu.org/zh/mit6.s081-lec14/</link>
    <pubDate>Sat, 22 Jul 2023 19:51:29 &#43;0800</pubDate><author>
                    <name>zwyyy456</name>
                </author><guid>https://doit.tellm.eu.org/zh/mit6.s081-lec14/</guid>
    <description><![CDATA[1 Overview文件系统的设计目标就是组织和存储数据，文件系统一个比较重要功能是持久化，即重启之后，数据不会丢失。xv6 通过把数据存储在 virtio]]></description>
</item><item>
    <title>Xv6 Lab7: Multithreading</title>
    <link>https://doit.tellm.eu.org/zh/xv6-lab7/</link>
    <pubDate>Sat, 22 Jul 2023 11:30:01 &#43;0800</pubDate><author>
                    <name>zwyyy456</name>
                </author><guid>https://doit.tellm.eu.org/zh/xv6-lab7/</guid>
    <description><![CDATA[1 Uthread: switching between threads这个题还是对的起它 moderate 的难度了，如果认真看了 book-riscv-rev2.pdf 的 Scheduling 章节，以及看了这个 课程翻译，那么这题可以很快做出来，个人觉得 pdf 讲得更加]]></description>
</item><item>
    <title>MIT 6.S081 Sleep &amp; Wake up</title>
    <link>https://doit.tellm.eu.org/zh/mit6.s081-lec13/</link>
    <pubDate>Thu, 20 Jul 2023 17:40:26 &#43;0800</pubDate><author>
                    <name>zwyyy456</name>
                </author><guid>https://doit.tellm.eu.org/zh/mit6.s081-lec13/</guid>
    <description><![CDATA[1 Sleep and wakeupSleep 允许一个内核线程等待某个特定事件的发生，另一个线程可以调用 wakeup 来表示这个正在等待时间发生的线程应该恢复了。 Sleep and wakeup are often called sequence cooridination or conditional synchronization mechanisms. xv6 中]]></description>
</item><item>
    <title>MIT 6.S081 Thread switching</title>
    <link>https://doit.tellm.eu.org/zh/mit6.s081-lec11/</link>
    <pubDate>Wed, 19 Jul 2023 10:46:24 &#43;0800</pubDate><author>
                    <name>zwyyy456</name>
                </author><guid>https://doit.tellm.eu.org/zh/mit6.s081-lec11/</guid>
    <description><![CDATA[1 Multiplexingxv6 通过将 cpu 从一个进程切换到另一个进程来实现 multiplex（多路复用），进程的切换会在两种情形下发生： xv6 的 sleep 与 wakeup 机制在进程等待 IO 完成或者]]></description>
</item><item>
    <title>MIT 6.S081 Multiprocessors and locking</title>
    <link>https://doit.tellm.eu.org/zh/mit6.s081-lec10/</link>
    <pubDate>Tue, 18 Jul 2023 13:54:16 &#43;0800</pubDate><author>
                    <name>zwyyy456</name>
                </author><guid>https://doit.tellm.eu.org/zh/mit6.s081-lec10/</guid>
    <description><![CDATA[1 why lock防止多核并行运行下的 race condition 导致的错误。 内核中的数据是典型的 concurrently-accessed 的数据。 2 race condition and how the lock avoid itA race condition is a situation in which a memory location is accessed concurrently, and at least one access is a write. Locks]]></description>
</item><item>
    <title>MIT 6.S081 Page faults</title>
    <link>https://doit.tellm.eu.org/zh/mit6.s081-lec08/</link>
    <pubDate>Mon, 17 Jul 2023 16:27:16 &#43;0800</pubDate><author>
                    <name>zwyyy456</name>
                </author><guid>https://doit.tellm.eu.org/zh/mit6.s081-lec08/</guid>
    <description><![CDATA[1 概述这一章主要聚焦于，我们利用 virtural memory 和 page fault 这两个机制，能够实现一些什么样的有意思的优化。 虚拟内存的有两大优势： Isolation，保证每个进]]></description>
</item></channel>
</rss>
