首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux内核分析》之构造一个简单的Linux系统MenuOS 实验总结

环境搭建与配置过程 个人Linux系统环境搭建MenuOS的过程 Linux系统环境搭建MenuOS的过程 1、Linux系统环境搭建MenuOS的过程 # 下载内核源代码编译内核 cd ~/LinuxKernel.../ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.18.6.tar.xz xz -d linux-3.18.6.tar.xz tar...-xvf linux-3.18.6.tar cd linux-3.18.6 make i386_defconfig make # 一般要编译很长时间,少则20分钟多则数小时 # 制作根文件系统 cd...继续运行 (gdb)break start_kernel # 断点的设置可以在target remote之前,也可以在之后 在实验楼中的过程 实验楼中实验过程 使用实验楼的虚拟机打开shell cd LinuxKernel...总结 Linux内核的启动,通过start_kernel()进行各种初始化工作,最终执行到rest_init()来初始化0号进程,同时0号进程创建1号用户态的进程以及其他服务的一些内核线程。

2.1K10
您找到你想要的搜索结果了吗?
是的
没有找到

Linux内核分析》之触发一个系统调用实验总结

实验及代码 fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。...使用C代码中嵌入汇编代码实验测试 使用C代码中嵌入汇编代码实验测试 代码 #include #include #include int...当初由于没仔细看视频于是有了上面最后的代码实验测试,在eax处设了个13,调成time的系统调用号了,故最后一张图中打印出来的仅有一个主程序。...总结 系统通过中断的方式完成用户态到内核态的转换过程,同时调用系统函数实现系统功能。...windCoder原创作品转载请注明出处 参考资料 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 实验代码参考地址:

84530

Linux内核分析》之操作系统是如何工作的 实验总结

前言 实验阶段,由于学校网速等条件限制,未能在真机上搭建出实验环境。在实验楼中,将代码粘贴进去出现严重的缩进错位,最终未能完成编译新的。本文以分析关键代码为主。...环境搭建简易过程 1、创建(mkdir)工作区SG13225146 2、将linux-3.9.4文件夹剪切到刚创建工作区SG13225146 3、将mykernel_for_linux3.9.4sc.patch...之后再在linux-3.9.4文件夹中make 编译一下。 11、使用qemu再次查看内核,正常情况下应该可以看到更改后的。...小总结:1-7步是编译linux内核过程,8-9为查看内核信息的过程,10-11为编写自己的简易内核过程。 相关图片 ? mymain.c部分截图 ? 代码粘进去严重错位了= = ?...linux原内核工作状态 实验总结  主要代码及分析 各文档所包含的头文件不在列出 mypcb.h 这个头文件主要定义了进程控制结构PCB mypcb.h #define MAX_TASK_NUM 4

1.8K31

Linux内核分析》之分析system_call中断处理过程实验总结

前言 先占个位置,在实验楼做实验,刚做完一半忘了延续时间,结果之前写的代码神马的全没了。让我先去角落哭会,总结明天再写。...2015-04-05 之前代码参考地址:《Linux内核分析》之触发一个系统调用实验总结 代码与分析 跟踪截图 多图预警,由于跟踪失败,感觉仅可做个动过手的见证,但可看性不高,可以略过,具体的看个人了。...主要代码段 xref: /linux-3.18.6/arch/x86/kernel/entry_32.S的490行起(持续更新中-2014-4-7) # system call handler stub...总结 当一个系统调用发生时,进入内核处理系统调用,内核提供了一些服务,服务结束返回用户态之前可能会发生进程调度,进程调度里面会发生中断上下文的切换和进程上下文的切换。...windCoder原创作品转载请注明出处  参考资料 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000

1.5K10

Linux基本操作命令 实验

一、实验目的: 1. 熟悉Linux基本命令。 2. 熟悉Linux操作系统。 二、实验环境: 一台装有Linux的机器。 三、实验内容: 1.文件操作命令的使用。...查看文件与目录ls 进入Linux系统,输入ls-m按回车键执行。 一、实验目的: 1. 熟悉Linux基本命令。 2. 熟悉Linux操作系统。 二、实验环境: 一台装有Linux的机器。...三、实验内容: 1.文件操作命令的使用。 用vi编辑器新建一个testl文件 输入this is testl~! 查看文件与目录ls 进入Linux系统,输入ls-m按回车键执行。...实验 文件复制命令cp(用于复制文件或目录) 输入命令cp testl testl.a,复制文件testl 内容到文件testl.a中 文件改名命令mv(用于移动或更名现有的文件或目录) 输入mv testl

1.3K20

linux入门总结

linux的核心概念知识:      linux软件是开源免费的,而linux是由Unix演变而成,Unix是由MINIX演变而成。...2000年以后,linux系统日趋成熟,涌现大量基于linux服务平台的应用并广泛用于ARM技术嵌入式系统之中。 1990年,芬兰赫尔辛基大学学生linuxTorvalds首次接触MINIX。...1991年底,linuxTorvalds公开了linux内核源码0.02版。 1984年,AndrewS.Tanerbaum(谭宁邦)开发了教学的Unix系统,名为MINIX(miniunix)。...linux的诞生:            始于芬兰赫尔辛基大学的一位计算机系的学生,名字为:linux Torvalds Unix:1969年在贝尔实验室诞生,70年代盛行,1977年诞生(BSD),从...打开VMware软件:点击创建虚拟机选择自定义模式点击下一步兼容性选择默认点击下一步安装客户机操作系统选择稍后安装怎么说呢,其实这个步骤是个坑点击下一步选择linux系统版本应为现在大部分系统都是64位的所以选择

1.3K20

android开发环境搭建实验报告总结_android开发实验报告

一、实验目的: 下载并熟悉 Android 开发工具,掌握 Android 移动端开发环境的搭建、项目导入,并能够将项目部署到模 拟器和真机进行测试,掌握 Android 工程目录结构。...二、实验设备: 1. PC 机 2. Windows 操作系统 3. JDK13.0.2 4. Android Studio 安装包 5....Android SDK 安装包 三、实验原理简述: JDK 在 Java 开发环境搭建时已安装并配置完成,现进行 Android 开发环境搭建,还需要安装配置 Android Studio...四、实验数据记录及数据处理: 4. 1 Android Studio 的下载与安装 下载地址:https://www.androiddevtools.cn/或 http://developer.android.com...为了方便后续 ADB 调试,将 SDK 路径下的 platform-tools 文件夹加入到系统变量 path 中,如下图所示: 五、实验结果分析: 下图为在 Android Studio

1.8K50

linux总结

1.Linux介绍 Linux 内核最初只是由芬兰人林纳斯·托瓦兹( Linus Torvalds) 在赫尔辛基大学上学时出于个人爱好而编写的。...Linux 能运 行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。 Linux 继承 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。...系统 3)在VMWARE中安装linux系统 第一步 :选择创建新的虚拟机 第二步:选择默认典型,下一步 第三步:选择默认的稍后安装操作系统 第四步:选择linux和对应的安装版本 第五步:安装位置选择资源充足的盘...qq_39052513/article/details/100272502 3.Linux文件与目录结构 1)文件 Linux系统中一切皆文件 2)目录结构 4.linux中文本编辑器 vim是从 vi...这些服务程序都放在相应 LINUX系 统启动级别的文件夹下面。

56021

Linux 命令总结

/BBB 路径的使用总结: 如果离当前目录近使用相对路径,如果离根目录近使用绝对路径,如果进入的是中间目录建议使用绝对路径 自动补全: 两次tab键 cp: 拷贝 14.1 cp 文件名 路径: 把文件拷贝到指定路径...在终端显示的内容信息重写规定方向,保存到指定文件里面,以后查看数据是文件查看就可以了 26.1 > :如果文件不存在,那么先创建,否则会先把原有文件的数据清空然后再写入 26.2 >> : 在原有数据的基础上进行追加 26.3 总结...表示下一页 29.3 回车: 表示下一行 29.4 b:表示上一页 29.5 q:退出 文件合并 cat 1.txt 2.txt > 3.txt 管道: 可以理解成是一个容器,存放在终端显示的内容 28.1 总结...那么需要使用绝对路径创建软连接 grep: 根据指定的内容在文件中进行查找 30.1 grep "a" 8.txt : 根据指定内容在文件中进行查找 30.2 -n:行号, -i:忽略大小写 -v: 取反 30.3 总结...-perm 666: 在当前目录查找文件权限是可读可写的, -perm根据权限查找 31.3 总结: ? [] 支持的通配符 ls:支持的通配符: _,?

97720

Linux 内核定时器实验

同理, Linux 要运行,也是需要一个系统时 钟的,至于这个系统时钟是由哪个定时器提供的,笔者没有去研究过 Linux 内核。...void mdelay(unsigned long mseces) 表 50.1.3.1 内核短延时函数 50.3 实验程序编写 本实验对应的例程路径为: 开发板光盘-> 2、 Linux 驱动例程->...本章实验我们使用内核定时器周期性的点亮和熄灭开发板上的 LED 灯, LED 灯的闪烁周 期由内核定时器来设置,测试应用程序可以控制内核定时器周期。...50.3.1 修改设备树文件 本章实验使用到了 LED 灯, LED 灯的设备树节点信息使用 45.4.1 小节创建的即可。...50.4 运行测试 50.4.1 编译驱动程序和测试 APP 1、编译驱动程序 编写 Makefile 文件,本章实验的 Makefile 文件和第四十章实验基本一样,只是将 obj-m 变 量的值改为

2.1K10

linux内核定时器实验

函数 5.mod_timer 函数 3.linux内核短延时函数 二、硬件原理图分析 三、实验程序编写 1.修改设备树文件 2.定时器驱动程序编写 3.编写测试APP 四、运行测试 定时器是我们最常用到的功能...Linux 内核提供了毫秒、微秒和纳秒延时函数,这三个函数如表所示: 二、硬件原理图分析 三、实验程序编写 本章实验我们使用内核定时器周期性的点亮和熄灭开发板上的 LED 灯,LED 灯的闪烁周期由内核定时器来设置... #include #include #include #include... #include #include #include <linux/semaphore.h...文件名 : timer.c 作者 : 左忠凯 版本 : V1.0 描述 : Linux内核定时器实验 其他 : 无 论坛 : www.openedv.com 日志 : 初版V1.0 2019/7/24

3.5K10
领券