日韩精品一区二区三区高清_久久国产热这里只有精品8_天天做爽夜夜做爽_一本岛在免费一二三区

合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

代做Operating Systems 、代寫C++程序語言
代做Operating Systems 、代寫C++程序語言

時間:2025-02-15  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯



Operating Systems - 

New York University

Tandon School of Engineering

Department of Computer Science and Engineering

Introduction to Operating Systems

Spring 2025


Assignment 3

(10 points)


Develop a simple Linux kernel module that runs on your virtual machine. The only functionality required of your

module is to be able to load and unload, printing a debug message while doing so.

When a Linux kernel module is loaded, it invokes an init function, and when it is removed (or unloaded), it

invokes an exit function.

A) (0 points) Read chapter 2 of the freely available O’Reilly book “Linux Device Drivers, 3

rd

Edition”

(https://lwn.net/Kernel/LDD3/), in particular p.16, as well as your text book p.96 to get you started. Note that

even though the LDD3 book is written for kernel version 2.6, most mechanisms are applicable with minor or

no changes. The relevant example code is copied below as a starting point.

#include

#include

MODULE_LICENSE("Dual BSD/GPL");

static int hello_init(void)

{

printk(KERN_ALERT "Hello, world\n");

return 0;

}

static void hello_exit(void)

{

printk(KERN_ALERT "Goodbye, cruel world\n");

}

module_init(hello_init);

module_exit(hello_exit);

The hello_init() function is invoked when you insert your module (using the insmod shell command),

whereas the hello_exit() is called when you unload your module (using the rmmod shell command).

B) (0 points) Read the description of the global kernel variable jiffies and the macro HZ in the O’Reilly book

(search in the searchable pdf). Then read about the ktime_get_boottime() routine in

https://www.kernel.org/doc/html/latest/core-api/timekeeping.html


C) (0 points) You may need to install the kernel headers if not already installed. Type:


sudo apt-get install linux-headers-$(uname -r)


D) (10 points) Modify the c code given above (which becomes your lab3.c) such that:

1) The init function prints the tick time in milliseconds (i.e. the timer interval, as we defined it in weeks 1/2)

after the hello message.

The init function shall also save the value of jiffies and the current time.

Operating Systems - Prof. Omar Mansour

2) The exit function prints a goodbye message and the time in milliseconds between the insertion and

removal of the module i.e. between init and exit functions) using two different methods:

a. Using the difference in the value of jiffies from inserting the module to removing the module.

b. Using the time difference obtained by reading the timer (Hint: use ktime_get_boottime().

You shall use the Makefile provided with the assignment (In some cases, you may need to slightly modify the

Makefile provided to suit your setup). You should place it in the same directory as your .c file (lab3.c)

Hints:

E) Your module should use printk() to print messages. You will use this print facility to also debug your

code if needed ( ). More information may be found on https://www.kernel.org/doc/html/latest/core-

api/printk-basics.html

F) Use dmesg shell command to view messages printed by printk(), e.g. type:

dmesg

You may clear the log using:

dmesg -C

What to submit to gradescope:

Please submit the following files individually:

1) Source file(s) with appropriate comments.

The naming should be similar to “lab#_$.c” (# is replaced with the assignment number and $ with the

question number within the assignment, e.g. lab4_b.c, for lab 4, question b OR lab5_1a for lab 5, question

1a).

2) A single pdf file (for images + report/answers to questions), named “lab#.pdf” (# is replaced by the

assignment number), containing:

 Screen shot(s) of your terminal window showing the current directory, the command used to

compile your program, the command used to run your program and the output of your program.

3) Your Makefile, if any. This is applicable only to kernel modules.


RULES:

 You shall use kernel version 4.x.x or above. You shall not use kernel version 3.x.x.

 You may consult with other students about GENERAL concepts or methods but copying code (or code

fragments) or algorithms is NOT ALLOWED and is considered cheating (whether copied form other

students, the internet or any other source).

 If you are having trouble, please ask your teaching assistant for help.

 You must submit your assignment prior to the deadline.

請加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp




 

掃一掃在手機打開當前頁
  • 上一篇:代做COP 3402、代寫Python/c++語言程序
  • 下一篇:代寫COMP S311、代做Java編程語言
  • 無相關信息
    合肥生活資訊

    合肥圖文信息
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    出評 開團工具
    出評 開團工具
    挖掘機濾芯提升發動機性能
    挖掘機濾芯提升發動機性能
    海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
    海信羅馬假日洗衣機亮相AWE 復古美學與現代
    合肥機場巴士4號線
    合肥機場巴士4號線
    合肥機場巴士3號線
    合肥機場巴士3號線
    合肥機場巴士2號線
    合肥機場巴士2號線
    合肥機場巴士1號線
    合肥機場巴士1號線
  • 短信驗證碼 酒店vi設計 deepseek 幣安下載 AI生圖 AI寫作 aippt AI生成PPT 阿里商辦

    關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    日韩精品一区二区三区高清_久久国产热这里只有精品8_天天做爽夜夜做爽_一本岛在免费一二三区

      <em id="rw4ev"></em>

        <tr id="rw4ev"></tr>

        <nav id="rw4ev"></nav>
        <strike id="rw4ev"><pre id="rw4ev"></pre></strike>
        国产一区二区欧美| 国产日韩欧美高清| 欧美女同视频| 日韩一级裸体免费视频| 欧美日韩亚洲一区三区| 国产精品永久入口久久久| 国产精品久久久久av免费| 女同性一区二区三区人了人一| 国产精品久久久久久久久久妞妞| 亚洲尤物精选| 久久国产精品久久精品国产| 国产精品腿扒开做爽爽爽挤奶网站| 最新亚洲电影| 一区二区在线视频观看| 亚洲精品乱码视频| 欧美区二区三区| 老司机午夜精品视频| 亚洲欧美国产一区二区三区| 欧美激情一区二区三区不卡| 欧美人与禽猛交乱配视频| 国内精品久久久久伊人av| 国产日韩av在线播放| 国产色产综合色产在线视频| 欧美午夜精品久久久久久孕妇| 国产精品一二三四| 韩国女主播一区| 久久精品国产精品亚洲| 亚洲美女av电影| 亚洲第一二三四五区| 在线欧美福利| 欧美欧美全黄| 999亚洲国产精| 久久婷婷麻豆| 亚洲欧美另类中文字幕| 免费观看成人鲁鲁鲁鲁鲁视频| 国产精品卡一卡二卡三| 国产精品久久国产愉拍| 欧美日韩视频在线| 免费成人av在线| 欧美区视频在线观看| 国产主播喷水一区二区| 久久精品欧美| 欧美精选午夜久久久乱码6080| 国产日韩欧美一区二区三区四区| 国产精品入口夜色视频大尺度| 国产精品国产精品国产专区不蜜| 亚洲男女毛片无遮挡| 在线看国产一区| 国产亚洲欧洲一区高清在线观看| 亚洲精品视频在线播放| 欧美中日韩免费视频| 亚洲一区二区视频在线观看| 久久网站热最新地址| 国产三级欧美三级日产三级99| 国产精品日韩高清| 亚洲自拍高清| 国产精品一区二区三区四区| 国产精品大全| 制服丝袜激情欧洲亚洲| 久久9热精品视频| 国产精品成人免费精品自在线观看| 毛片av中文字幕一区二区| 日韩视频在线一区二区| 日韩一级在线观看| 国产精品女主播在线观看| 久久精品国产999大香线蕉| 久久久蜜臀国产一区二区| 亚洲欧美日韩一区二区三区在线观看| 欧美一激情一区二区三区| 久久久久国产成人精品亚洲午夜| 国产精品porn| 美女图片一区二区| 亚洲精品视频免费在线观看| 欧美影院在线播放| 一区二区三区|亚洲午夜| 日韩视频免费观看| 国产精品美女久久| 亚洲精品美女在线| 亚洲人成在线播放| 欧美美女bbbb| 国产精品二区影院| 韩日成人在线| 国产有码在线一区二区视频| 午夜视频在线观看一区二区三区| 国产精品久久久久久久久免费桃花| 久久久精品网| 一区二区精品国产| 99国产精品久久久| 91久久国产综合久久91精品网站| 国产乱子伦一区二区三区国色天香| 在线观看欧美亚洲| 欧美日韩一区二区三区高清| 美女视频黄免费的久久| 久久麻豆一区二区| 欧美亚洲一区二区三区| 欧美激情一区| 亚洲一区二区精品在线| 国产精品一区二区三区四区| 欧美精品导航| 欧美理论电影在线播放| 91久久极品少妇xxxxⅹ软件| 欧美日韩国产小视频在线观看| 欧美1区2区视频| 国产日韩精品一区观看| 欧美亚洲视频| 亚洲欧美在线高清| 亚洲黄一区二区| 亚洲国产精品尤物yw在线观看| 一区二区精品在线| 欧美日韩成人在线视频| 韩国精品一区二区三区| 久久av最新网址| 欧美性大战久久久久久久| 欧美午夜电影完整版| 欧美激情一区二区三级高清视频| 伊人久久久大香线蕉综合直播| 欧美成人有码| 亚洲另类在线视频| 欧美精品激情blacked18| 性xx色xx综合久久久xx| 欧美成人一区二免费视频软件| 亚洲欧美日韩国产综合| 亚洲欧洲日产国产综合网| 欧美在线看片| 亚洲久久一区二区| 午夜亚洲视频| 久久手机精品视频| 在线精品一区二区| 一本色道久久88综合亚洲精品ⅰ| 亚洲黄色在线观看| 国产一区二区在线观看免费播放| 精品96久久久久久中文字幕无| 亚洲免费小视频| 国产精品扒开腿做爽爽爽软件| 久久精品一区四区| 蜜臀91精品一区二区三区| 激情懂色av一区av二区av| 亚洲精品欧美专区| 美女被久久久| 国产精品v欧美精品v日韩精品| 欧美激情一区二区三区不卡| 国产伦精品一区二区| 亚洲国产精品第一区二区| 欧美日韩在线综合| 亚洲欧美精品中文字幕在线| av72成人在线| 蜜臀va亚洲va欧美va天堂| 在线播放国产一区中文字幕剧情欧美| 最近看过的日韩成人| 亚洲激情黄色| 亚洲一区二区三区久久| 亚洲伦理久久| 在线色欧美三级视频| 国产精品h在线观看| 狠狠色噜噜狠狠色综合久| 亚洲福利国产精品| 欧美日韩一本到| 蜜臀久久久99精品久久久久久| 亚洲专区一二三| 欧美一进一出视频| 国产视频精品网| 米奇777超碰欧美日韩亚洲| 欧美日韩一视频区二区| 国产亚洲二区|