E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Linux-0.11
Linux-0.11
内核分析01:从开机加电到执行main函数之前的过程
1.启动BIOS,准备实模式下的中断向量表和中断服务程序(ISR)按下电源键,处理器(IA-32)进入16位实模式,从CS:IP=0xFFFF0处开始运行。BIOS程序在主板的一块ROM芯片中,该芯片无需初始化即可直接读取,被接在处理器的0xFE000-0xFFFFF地址处。BIOS程序的入口地址被设计为0xFFFF0,因此上电过后处理器实际上运行的是BIOS程序。BIOS程序将中断向量表放在内存
卡咖喱
·
2020-07-04 05:22
嵌入式
操作系统之打印Hello World
调用printf//
linux-0.11
/init/main.cstaticintprintf(constchar*fmt,...)
小段孩
·
2020-07-02 11:16
os操作系统
Linux-0.11
操作系统实验5-信号量的实现和应用
实验环境:信号量的实现和应用实验理论:
Linux-0.11
操作系统实验5理论-信号量与临界区实验任务:在Ubuntu下编写程序,用信号量解决生产者——消费者问题;在
linux-0.11
中实现信号量,用生产者
蓁叶
·
2020-06-29 07:56
Linux-0.11OS
哈工大李治军
Linux-0.11
操作系统实验索引与总结
索引目录
Linux-0.11
操作系统实验1-操作系统的引导
Linux-0.11
操作系统实验2-系统调用
Linux-0.11
操作系统实验3-进程运行轨迹的跟踪与统计
Linux-0.11
操作系统实验4-基于内核栈切换的进程切换
蓁叶
·
2020-06-29 07:56
Linux-0.11OS
bootsect.s 分析——
Linux-0.11
学习笔记(一)
bootsect.s分析——
Linux-0.11
学习笔记(一)为了节省篇幅,完整的代码就不贴了。
车子 chezi
·
2020-06-27 07:00
Linux-0.11
Linux-0.11
任务调度
首先是定时器的初始化,在
Linux-0.11
版本中,使用的是8253/8254中的定时器0,初始化部分代码如下:voidsched_init(void){/*...
mcgrady_tracy
·
2020-06-24 14:57
linux-0.11
Linux-0.11
实验四 进程运行轨迹的跟踪与统计 实验报告
实验要求与实验指导见实验楼。实验环境为配置本地实验环境。一、实验目标掌握Linux下的多进程编程技术;通过对进程运行轨迹的跟踪来形象化进程的概念;在进程运行轨迹跟踪的基础上进行相应的数据统计,从而能对进程调度算法进行实际的量化评价,更进一步加深对调度和调度算法的理解,获得能在实际操作系统上对调度算法进行实验数据对比的直接经验。二、实验内容和结果(一).编写多进程的样本程序process.c 创建
laoshuyudaohou
·
2020-06-24 02:07
OS
and
Linux
Windows下用Bochs编译运行
Linux-0.11
Windows下用Bochs编译运行
Linux-0.11
原文链接:https://blog.csdn.net/u014688145/article/details/50575588**简要介绍:**Bochs
yasepix
·
2020-02-11 16:00
哈工大操作系统实验(一)系统引导
的引导过程进行初步的了解;按照下面的要求改写0.11的引导程序bootsect.s修改build.c,以便可以使用makeBootImage命令实验步骤:修改bootsect.s中的提示信息及相关代码;在目录
linux
寒夏凉秋
·
2019-11-29 11:36
快速搭建
Linux-0.11
实验环境
搭这个实验环境主要是为了学习
Linux-0.11
的代码,那就需要修改代码再次编译来验证自己的想法。
dejavudwh
·
2019-10-24 14:00
李治军操作系统实验二——系统调用总结
1、实验内容在
linux-0.11
内核中添加两个系统调用,iam()和whoami(),并编写简单的测试程序测试这两个接口两个接口要实现用户态和内核态的数据传输工作此为简述,详细的实验目的及内容见实验楼
weixin_42751370
·
2019-09-20 11:43
李治军操作系统
操作系统
GDB+Qemu调试
Linux-0.11
的代码
zipLinux-0.11内核源码的改进版,可以在gcc-5.5.0下顺利编译通过,原生代码只能在gcc-1.4下编译:https://github.com/yuanxinyu/Linux-0.112.编译
Linux
readilen
·
2019-08-19 20:05
c语言之两个结构体中含有指向对方的指针成员
最近在看
linux-0.11
源码,发现structtask_struct和structm_inode各有一个指向对方的指针作为成员,当时觉得很矛盾,于是写了代码验证。
窗前的樱花
·
2018-06-25 11:19
操作系统之旅(003)—— 编译bootsect.s
cd到linux-0.11.tar.gz所在目录,输入命令:tarzxvflinux-0.11.tar.gzcd到
linux-0.11
目录下,输入命令:makeall没有make工具,执行命令:sudoaptinstallm
问我受不受
·
2018-06-22 22:31
实验楼OS实验一 熟悉实验环境
实验一:熟悉环境1.解压hit-oslab进入到工作目录tarzxvfhit-oslab-linux-20110823.tar.gz2.进入到oslab下的
linux-0.11
文件下编译内核命令:makeall
寂地就是寂地呀
·
2018-01-01 11:30
操作系统
linux-0.11
内核源码学习笔记一(嵌入式汇编语法及使用)
linux内核源码虽然是用C写的,不过其中有很多用嵌入式汇编直接操作底层硬件的“宏函数”,要想顺利的理解内核理论和具体实现逻辑,学会看嵌入式汇编是必修课,下面内容是学习过程中的笔记;当做回顾时的参考。一、嵌入式汇编语法:1、格式1asm("汇编语句"//"("之前用asm或__asm__意为"()"的内容是汇编语句2:输出寄存器3:输入寄存器4:会被修改的寄存器);除第一行以外,后面带冒号的行若不
ZhangyiStudio
·
2017-12-12 00:00
三.编写简单的汇编启动程序
1汇编启动程序这部分主要是用来学习
linux-0.11
,做预前汇编准备工作。同时也是一个启动程序,用来引导操作系统代码。1.1工具1.bin86,所以我们使用的是as86汇编语言。
wit_yuan
·
2017-12-01 10:18
linux-0.11
内核深度剖析视频
大家好,欢迎观看由BitEye工作室推出的《linux内核深度剖析》系列视频。本套视频将以linux初学者的角度来探讨linux0.11内核,之所以选择linux0.11内核是基于以下几个原因:1.因为该内核比较简单,代码量小但基本具备操作系统应有的功能(进程管理,内存管理,文件系统等),资料比较多,是入门首选。2.由比较方便的虚拟测试环境(免去繁杂的硬件调试),在学习的过程中可以边写边测试。这样
miniOS
·
2017-03-16 13:53
Linux驱动
My
OS
linux启动分析
操作系统实验报告-地址映射
地址映射实验步骤用汇编级调试启动
linux-0.11
:cd~/workspace/oslab.
Tradoff
·
2016-08-15 21:00
操作系统实验报告-信号量的实现和应用
实验内容在
Linux-0.11
中实现信号量,并编写生产者-消费者程序进行检验。
Tradoff
·
2016-08-09 21:00
操作系统实验报告-熟悉实验环境
实验材料准备下载实验包hit-oslab-linux-20110823.tar.gz(包含
linux-0.11
源码、bochs虚拟机等):https://cms.hit.edu.cn/pluginfile.php
Tradoff
·
2016-07-25 01:00
在Redhat中搭建
linux-0.11
运行环境
不过还是谢谢,个人感觉最好还是参考一下OLDLINUX论坛上的指南)http://blog.chinaunix.net/u1/37292/showart_421699.html 在Redhat中搭建
linux
ztguang
·
2016-03-30 10:00
Bochs下编译安装
Linux-0.11
版本
1、下载一个带有gcc1.40编译环境的Linux0.11系统软件包。http://oldlinux.org/Linux.old/bochs/linux-0.11-devel-040329.zip2、解压linux-0.11-devel-040329.zip3、安装Bochs:在解压的目录里有Bochs安装文件:Bochs-2.1.1.exe,点击安装4、把解压下的大多数文件拷贝到安装目录下(除了
myideatt
·
2016-02-24 09:36
linux
源代码
option
软件包
linux-0.11
抠代码-bootsect
//bootfun.s .global asm_message .global asm_memmove .global asm_readsector .global asm_checkLBA .code16 //extern void asm_memmove(void* src,void* des,int icount); asm_memmove: #源地址 ds:si 目的地
·
2015-11-13 07:55
linux
linux-0.11
抠代码-GDB+VMWARE
vmware新建一个虚拟机,硬盘为0.1G,建立完成后要先启动一次虚拟机,此时无任何系统,然后再关闭,应该会多出一个ostest-flat.vmdk这个虚拟磁盘文件,下面要用到 新建完成后 我的虚拟机叫OSTest,然后在虚拟机根目录下 有个OSTest.vmx配置文件,在关闭vmware的情况下 用notepad加入以下四句 debugStub.listen.guest32 = &qu
·
2015-11-12 20:31
vmware
linux-0.11
内核 任务的堆栈切换
http://blog.163.com/di_yang@yeah/blog/static/86118492201212534924900/ 一直缠绕的两个问题:怎样标识的内核栈与用户栈?如何在内核态堆栈与用户态堆栈之间切换? 用户态堆栈指针:ss和esp; 内核态堆栈指针:ss0和esp0; 二者均位于任务的tss结构中。这里的任务是指除任务0和1之外的普通任务。 CPU进行
·
2015-11-07 13:49
linux
linux-0.11
内核 任务的堆栈切换
一直缠绕的两个问题:怎样标识的内核栈与用户栈?如何在内核态堆栈与用户态堆栈之间切换? 用户态堆栈指针:ss和esp; 内核态堆栈指针:ss0和esp0; 二者均位于任务的tss结构中。这里的任务是指除任务0和1之外的普通任务。 CPU进行用户态堆栈到内核态堆栈的切换操作时,CPU会从当前任务的任务状态段TSS中取得新堆栈的段选择符和偏移值,即从TSS的ss0和esp0字段中获取
·
2015-11-07 10:40
linux
linux-0.11
内核 信号处理小结
linux-0.11
内核中关于信号处理这部分内容主要涉及四个文件system_call.s,signal.h,signal.c,exit.c。
·
2015-11-07 10:39
linux
使用boch仿真器在x86 PC平台上搭建Linux0.11系统环境(windows下)
版本原因吧 将boch版本换成2.4的问题就迎刃而解了~ 简单说说步骤: 第一步:安装boch-2.4.exe 我已经帮你找好地址了哈哈 点击打开链接 第二步:下载
linux
·
2015-11-01 08:58
windows
x01.os.20: compile
linux-0.11
on the ubuntu
为什么是
linux-0.11
现在的 linux-3.18,近千万行代码,即使是 linus,也没有全部看完,更不用说拿来学习
·
2015-10-31 10:46
compile
一个简单的Linux内核代码整合到一个文件的Java程序
这几天开始看
linux-0.11
,但是用电脑,手机看源代码、做些笔记不方便也没体验感(如果大家有推荐的软件或者硬件来看源代码,跟我说一下,谢谢!)
HanJan
·
2015-07-18 21:00
源代码
linux内核
Linux-0.11
内核源码分析系列:内存管理up_wp_page()与do_wp_page()函数分析
/* *Author : DavidLin *Date : 2014-11-22pm *Email :
[email protected]
or
[email protected]
*world : the city of SZ, in China *Ver : 000.000.001 *history : editor time
linpeng1577
·
2014-12-28 12:04
linux
kernel
Linux-0.11
内核源码分析系列:内存管理free_page()与free_page_tables()函数分析
/* *Author : DavidLin *Date : 2014-11-22pm *Email :
[email protected]
or
[email protected]
*world : the city of SZ, in China *Ver : 000.000.001 *history : editor time
linpeng1577
·
2014-12-28 12:50
linux
kernel
Linux-0.11
内核源码分析系列:内存管理try_to_share()与share_page()函数分析
/* *Author : DavidLin *Date : 2014-11-22pm *Email :
[email protected]
or
[email protected]
*world : the city of SZ, in China *Ver : 000.000.001 *history :
linpeng1577
·
2014-12-28 12:08
linux
kernel
Linux-0.11
内核源码分析系列:内存管理get_empty_page()与put_page()函数分析
/* *Author : DavidLin *Date : 2014-11-22pm *Email :
[email protected]
or
[email protected]
*world : the city of SZ, in China *Ver : 000.000.001 *history :
linpeng1577
·
2014-12-28 12:20
linux
kernel
Linux-0.11
内核源码分析系列:内存管理copy_page_tables()函数分析
/* *Author : DavidLin *Date : 2014-11-22pm *Email :
[email protected]
or
[email protected]
*world : the city of SZ, in China *Ver : 000.000.001 *history : editor
linpeng1577
·
2014-12-28 12:14
linux
kernel
Linux-0.11
内核源码分析系列:内存管理copy_page_tables()函数分析
/* *Author : DavidLin *Date : 2014-11-22pm *Email :
[email protected]
or
[email protected]
*world : the city of SZ, in China *Ver : 000.000.001 *history : editor
linpeng1577
·
2014-12-28 12:14
linux
kernel
Linux-0.11
内核源码分析系列:进程调度
/* *Author : DavidLin *Date : 2014-12-10pm *Email :
[email protected]
or
[email protected]
*world : the city of SZ, in China *Ver : 000.000.001 *h
linpeng1577
·
2014-12-27 22:44
linux
kernel
Linux-0.11
内核内存管理get_free_page()函数分析
2)*/
Linux-0.11
内存管
linpeng1577
·
2014-12-27 22:51
linux
kernel
linux下调试linux0.11
image直接用的这里的http://oldlinux.org/Linux.old/
Linux-0.11
/images/insight-6-8-1编译 yuminstallncurses-devel.
guotong1988
·
2014-12-25 17:00
Windows下用Bochs编译运行
Linux-0.11
1、下载一个带有gcc1.40编译环境的Linux0.11系统软件包。http://oldlinux.org/Linux.old/bochs/linux-0.11-devel-040329.zip2、解压linux-0.11-devel-040329.zip3、安装Bochs:在解压的目录里有Bochs安装文件:Bochs-2.1.1.exe,点击安装4、把解压下的大多数文件拷贝到安装目录下(除了
guotong1988
·
2014-12-23 11:00
Linux-0.11
内核定时器
Linux-0.11
中的内核定时器它是一个软定时器,还是由jiffies来实现的,最多同时可支持64个内核定时器,内核定时器数据结构定义如下:#defineTIME_REQUESTS64 staticstructtimer_list
mcgrady_tracy
·
2014-12-11 16:00
Linux-0.11
任务调度
首先是定时器的初始化,在
Linux-0.11
版本中,使用的是8253/8254中的定时器0,初始化部分代码如下:voidsched_init(void) { /*...*/ outb_p(0x36,0x43
mcgrady_tracy
·
2014-12-11 10:00
Linux-0.11
kernel_mktime函数分析
kernel_mktime函数在kernel/mktime.c文件中,代码如下:/* *linux/kernel/mktime.c * *(C)1991LinusTorvalds */ #include /* *Thisisn'tthelibraryroutine,itisonlyusedinthekernel. *assuch,wedon'tcareaboutyearstm_year-70;
mcgrady_tracy
·
2014-12-09 19:00
Ubuntu 12.10安装Bochs 2.6, 调试
linux-0.11
内核
http://blog.csdn.net/sinzou1/article/details/5903968Linux(ubuntu)安装bochshttp://wenku.baidu.com/view/f968e23b0912a21614792914.htmlubuntu下安装bochshttp://www.linuxidc.com/Linux/2011-07/38371.htmlUbuntu10.
xwisen
·
2014-07-22 10:00
Linux-0.11
实模式到保护模式
bootsect部分已经执行完成,程序也跳转到setup部分:start: !ok,thereadwentwellsowegetcurrentcursorpositionandsaveitfor !posterity. movax,#INITSEG!thisisdoneinbootsectalready,but... movds,ax movah,#0x03!readcursorpos xor
mcgrady_tracy
·
2014-07-02 23:00
Linux-0.11
加载操作系统
x86系列CPU可以在16位实模式和32位保护模式下运行,实模式的特点是地址总线只有20位,也就是只有1MB的寻址空间,为了兼容老的CPU,Intelx86系列CPU包括最新的CPU在上电时都运行在16位的实模式下,同时在硬件上强行将CS置成0xF000,IP置成0xFFF0,那么CS:IP就指向0xFFFF0这个地址,也就是上电瞬间代码从该处开始执行,而BIOS恰恰就存储在这个地方,可以想象一下
mcgrady_tracy
·
2014-06-30 08:00
Linux 0.11 在ubuntu-11和gcc-4.6.1下编译调试至正常运行的过程详解
引言1、 工作背景研究
linux-0.11
已有月余,代码看了好几遍,虽然能看懂,却总感觉如隔靴搔痒一般。这当然是正常的,毕竟不是自己写的东西,毕竟这是个操作系统。
zhangyujsj
·
2014-06-12 09:00
使用 Visual Studio 2013 编译,调试
linux-0.11
强烈推荐学习Linux源码从0.11版开始入手,原因嘛,见下面推荐两本Linux0.11源码分析书籍前言。《linux内核完全注释》 http://product.china-pub.com/22033电子书下载地址:http://pan.baidu.com/s/1ntx5hKt《Linux内核设计的艺术》 http://product.china-pub.com/3767800为什么用Visua
vigour1000
·
2014-04-12 11:00
linux-0.11
之Kernel-traps.c
在linux内核的硬件中断处理程序中,主要代码集中在asm.s和traps.c中。asm.s用于实现大部分硬件异常所引起的中断的汇编语言处理过程。而traps.c程序则实现了asm.s的中断处理过程中调用的C函数。一般的硬件异常所引起的中断处理流程如下图:traps.c中初始化函数trap_init()是在main.c中被调用的,用于初始化硬件异常处理中断向量(陷阱门),并设置允许中断信号的到来。
alphadevgo
·
2014-03-26 12:09
linux深入内核学习
linux
linux内核
异常处理
源代码
上一页
1
2
3
4
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他