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
内核分析07:缓冲区与多进程操作文件
1.缓冲块的进程等待队列A为一个读盘进程,目的是将hello.txt中的100字节读入buffer[100]中B为一个读盘进程,目的是将hello.txt中的200字节读入buffer[200]中C为一个写盘进程,目的是将hello.txt写入字符串”ABCDE”三个进程执行顺序为A–>B–>C,进程间没有父子关系//进程A打开文件---fs---open.c---sys_open()---(cu
卡咖喱
·
2024-02-11 07:10
嵌入式
linux内核
操作系统
c语言
LInux-0.11
文章目录前言学习资料正文前言B站视频链接linux0.11内核代码学习资料正文一个山区512字节
泰勒朗斯
·
2023-11-06 17:52
硬件
汇编
操作系统实验一到实验九合集(哈工大李治军)
操作系统实验作者寄语操作系统实验的学习是一个循序渐进的过程,初次看
linux-0.11
中的代码,看着满屏的汇编语言,确实头疼。
好春光不如梦一场-Ry67
·
2023-10-28 08:00
哈工大操作系统实验
linux
操作系统
ubuntu
bash
setup.s 分析——
Linux-0.11
学习笔记(二)
更新记录版本时间修订内容1.02018-4-14增加了“获取显示模式”这一节,AL取值的表格标题:setup.s分析——
Linux-0.11
学习笔记(二)老规矩,为了节省篇幅,完整的代码就不贴了。
车子 chezi
·
2023-10-25 10:46
Linux-0.11
Linux
0.11
main函数解析(一)——
Linux-0.11
学习笔记(五)
main()函数解析(一)——
Linux-0.11
学习笔记(五)经过了前面的各种铺垫,终于来到了main函数。这篇博客的任务是把init/main.c讲清楚。
车子 chezi
·
2023-10-25 10:46
Linux-0.11
Linux
0.11
在 Alpine Linux 上编译 Linux0.11 内核
近日,想在Windows系统下编译
Linux-0.11
内核。于是就在VirtualBox中安装了AlpineLinux3.4。
Zetao_Yang
·
2023-10-22 04:07
linux
tools
virtualbox
linux
内核
抄写Linux源码(Day6:读闪客文章第一回 “最开始的两行代码”)
按照Day1完成了Linux0.11的运行之后,可以在~/oslab/
linux-0.11
找到linux0.11的源码根据闪客的文章第一回:https://mp.weixin.qq.com/s/LIsqRX51W7d_yw-HN-s2DALinux0.11
shimly123456
·
2023-10-06 05:54
抄写Linux内核源码
系统安全
linux-0.11
文件系统
linux-0.11
将文件系统分成几个部分,分别为:超级块,i-node节点位图,块位图,数据块。
wit_yuan
·
2023-09-18 09:53
Linux 0.11 实验环境一键配置脚本(2020年版)
序言本文原载于我的博客,地址:https://blog.guoziyang.top/archives/52/声明:本脚本用于配置哈工大操作系统实验所需环境,主要包含Bochs虚拟机和
Linux-0.11
何人听我楚狂声
·
2023-08-06 06:07
抄写Linux源码(Day1:获取并运行 Linux0.11)
zhuanlan.zhihu.com/p/438577225这是我参考的一个别人写的Linux0.11解读:https://github.com/dibingfa/flash-linux0.11-talk我获取
Linux
shimly123456
·
2023-08-01 16:46
linux
运维
服务器
linux-0.11
在gcc-4.3.0版本以上的编译和调试
2020更新:解决所有编译警告。在《Linux内核完全注释》一书中配置的环境只在CentOS7上使用gcc-3.x编译成功并且运行,但书中对源码和Makefile的修改并不能用在gcc-4.x以上的版本。主要可能会出现以下问题:大块数据拷贝方向位不正确。string.h中字符串操作导致数据和指针出现奇怪改变。启用-On优化后出现问题(比如-O2优化会去优化链接顺序导致入口函数不正确)。get_fs
内核新视界
·
2023-07-29 05:26
linux
linux-0.11
内核
哈工大操作系统实验二(整理自用)
一、实验内容此次实验的基本内容是:在
Linux-0.11
上添加两个系统调用,并编写两个简单的应用程序测试它们。
小蓝的快乐学习之旅
·
2023-07-17 08:02
linux
windows
Linux-0.11
操作系统源码调试
Linux-0.11
是Linux最早期的代码,它包含现代操作系统的所有雏形,代码体量也不大,非常适合对操作系统进行源码学习。下面记录在Ubuntu22上面编译
chaoguo1234
·
2023-06-20 15:58
linux
运维
服务器
ubuntu
在WSL-Ubuntu上编译
linux-0.11
最近正好有操作系统的实验(操作系统原理与实践-实验楼),又不想在网页linux上面做实验,所以就下载了源码,想在WSL上面做实验,编译一下
linux-0.11
并用bochs模拟运行一下。
米西狮子
·
2023-04-05 12:35
Linux中文件系统truncate.c详解
目录
Linux-0.11
文件系统truncate.c详解free_indfree_dindtruncateLinux-0.11文件系统truncate.c详解free_indstaticvoidfree_ind
·
2023-03-25 01:06
Linux0.11内核源码
源码地址:http://www.oldlinux.org/Linux.old/
Linux-0.11
/sources/system/Linux0.11内核源码有中文注释版,显得有点乱,英文原版在上面的地址里
蜉蝣1号
·
2023-03-13 18:50
linux
linux
服务器
Linux-0.11
内核-阅读笔记-第一章
第一章从开机加电到执行main函数之前的过程
Linux-0.11
源码:http://www.oldlinux.org/Linux.old/
Linux-0.11
/sources/system/我打算从CPU
蜉蝣1号
·
2023-03-13 18:43
linux
linux
运维
服务器
Linux内核的Linux开发环境搭建
虚拟机下搭建
Linux-0.11
的Linux实验环境机器配置:Windows10Professional1809VMWareWorkstation15Prolinuxmint-19.1-cinnamon
「已注销」
·
2022-11-30 23:20
环境搭建
Linux
llinux-0.11内核
Linux
Mint
哈工大操作系统实验坏境搭建
学习目标:在Linux搭建
Linux-0.11
实验环境学习内容:1.将笔记后面的资源下载下来,并通过FTP传输到Linux上FTP的使用:FTP文件传输2.安装GCC3.4(1)解压tar-zxvfgcc
Paranoid☆
·
2021-10-09 17:19
操作系统
#
操作系统实验课
linux
自动驾驶
tcp/ip
lea指令!
最近在看
linux-0.11
内核,看到lea这个指令,google搜索了一下,转给大家,一起学习@!
robbie1314
·
2020-09-13 16:52
linux-0.11学习
Linux-0.11
内核分析03:进程1的创建及执行
进程1的创建及执行1.进程0创建进程1---init---main.c---sched_init()||-hd_init()||-fork()---int0x80//系统调度中断||-init()---setup()---int0x80||-pause()---int0x80||-kernel---sched.c---sched_init()---set_system_gate(0x80,&sys
卡咖喱
·
2020-09-10 11:14
嵌入式
哈工大操作系统实验---lab2:系统调用
实验目的:1、建立对系统调用接口的深入认识2、掌握系统调用的基本过程3、能完成系统调用的全面控制4、为后续实验做准备实验内容:1、在
Linux-0.11
上添加两个系统调用(原始只有72个系统调用)第一个系统调用
东瓜lqd
·
2020-08-26 16:39
linux-0.11
内核调试运行阅读环境的搭建及使用
实验资料下载实验过程参考以下链接:CentOS6+bochs-2.6+gdb调试linux0.11——成功vim+xxd=强大的十六进制编辑器下面三个是bochs的配置文件CentOS6bochs-2.6gdb调试linux0.11——bochsrc-fd1-gdb.bxrcCentOS6bochs-2.6gdb调试linux0.11——bochsrc-hdc-gdb.bxrcbochsrcwin
ztguang
·
2020-08-26 09:03
Linux内核/操作系统原理
linux-0.11
内核编译
平台:ubuntu10.10这就是搭建bochs的环境,搭建bochs更操作系统关系不大,我认为重点是在bochs的配置上。配置bochs就需要对bochsrc.bxrc文档的编辑。在安装bochs之前,需要做的是安装编译环境:code:sudoapt-getinstallbuild-essential闲话少说,先从安装开始:我是用ubuntu的软件包工具apt安装的bochs,当然了也可以直接编
YongXMan
·
2020-08-26 08:35
Linux内核游记
Linux内核学习笔记
linux
makefile
linux内核
gcc
ubuntu
keyboard
Linux 0.11系统环境搭建(windows下)
1.下载boch2.4https://sourceforge.net/projects/bochs/files/bochs/下载
linux-0.11
内核http://www.oldlinux.org/Linux.old
qweeera
·
2020-08-26 08:49
linux内核
一个操作系统的实现
HIT
Linux-0.11
实验七 地址映射与内存共享 实验报告
进行本次实验前需要先完成实验六信号量的实现与运用。实验要求与实验指导见实验楼。实验环境为配置本地实验环境。一、实验目标深入理解操作系统的段、页式内存管理,深入理解段表、页表、逻辑地址、线性地址、物理地址等概念;实践段、页式内存管理的地址映射过程;编程实现段、页式内存管理上的内存共享,从而深入理解操作系统的内存管理。二、实验内容和结果(一).跟踪地址翻译过程 这节实验的目的是用Bochs的调试功能
laoshuyudaohou
·
2020-08-26 07:46
OS
and
Linux
Linux-0.11
实验三 系统调用 实验报告
实验要求与实验指导见实验楼。实验环境为本地实验环境。一、实验目标建立对系统调用接口的深入认识;掌握系统调用的基本过程;能添加自定义系统调用,完成系统调用的全面控制;为后续实验做准备。二、实验内容和结果1.添加系统调用 首先在kernel/下创建who.c,实现两个系统调用的处理函数:#include#include#include#includecharmyname[24];intmylen;i
laoshuyudaohou
·
2020-08-26 07:46
OS
and
Linux
Linux-0.11
实验二 操作系统的引导 实验报告
一、实验目标熟悉hit-oslab实验环境;认识并理解操作系统的引导过程;掌握操作系统的基本开发过程;能对操作系统代码进行简单的控制。二、实验内容和结果1.改写bootsect.s文件 bootsect.s中打印“Loadingsystem…”的相关代码在!Printsomeinanemessage和msg1处,修改这两部分代码即可。 修改显示文本:msg1:.byte13,10.ascii"
laoshuyudaohou
·
2020-08-26 07:46
OS
and
Linux
HIT
Linux-0.11
实验五 基于内核栈切换的进程切换 实验报告
实验要求与实验指导见实验楼。实验环境为配置本地实验环境。一、实验目标深入理解进程和进程切换的概念;综合应用进程、CPU管理、PCB、LDT、内核栈、内核态等知识解决实际问题;开始建立系统认识。二、实验内容和结果0.进程切换过程 基于内核栈实现进程切换的大致过程如下: 当系统发生中断从用户态进入内核态时,CPU通过TR寄存器找到TSS的位置,根据TSS中保存的ss0:esp0的值切换到内核栈,并
laoshuyudaohou
·
2020-08-26 07:46
OS
and
Linux
HIT
Linux-0.11
实验六 信号量的实现与运用 实验报告
实验要求与实验指导见实验楼。实验环境为配置本地实验环境。一、实验目标加深对进程同步与互斥概念的认识;掌握信号量的使用,并应用它解决生产者——消费者问题;掌握信号量的实现原理。二、实验内容和结果1.生产者-消费者问题 根据实验要求,pc.c程序需打开一个文件作为共享缓冲区、创建一个生产者进程和多个消费者进程,其中生产者进程向缓冲区写入连续的整数,消费者进程从缓冲区依次读取数字并输出。 对于涉及到
laoshuyudaohou
·
2020-08-26 07:46
OS
and
Linux
哈工大oslab
Linux-0.11
实验一 熟悉实验环境 实验报告
实验一熟悉实验环境实验报告一、实验目标认识实验平台和实验工具;认识实验环境的目录结构;掌握编译、运行、调试、文件交换等操作命令。二、实验内容和结果0.了解实验平台和工具\quad本实验采用的环境为实验楼虚拟机平台,主要软件环境如下:GCC编译器。GDB调试器。Ubuntu。Bochs:一个IA-32(X86)架构PC机模拟器,可以模拟出多种操作系统的环境,如Linux、DOS、Windows等。1
laoshuyudaohou
·
2020-08-26 07:46
OS
and
Linux
学习
linux-0.11
内核——搭建环境(编译、调试bootsec)
前言本博文是本专栏博文的起点,通过本文的学习,通过qemu虚拟机将
linux-0.11
内核跑起来,有了这个可以跑的内核,在有疑问的地方,我们就可以通过调试的方式来学习内核。
Icoding_F2014
·
2020-08-26 07:06
Advanced
OS
操作系统高级教程
在windows下调试linux内核
//download.csdn.net/source/404520part2http://download.csdn.net/source/404526编译过程:1).解压后默认的文件夹位置是在D:/
Linux
I2Cbus
·
2020-08-25 15:20
linux
linux-0.11
调试教程,timer_interrupt,内核态发生的时钟中断(01)
下面的是进程1,mount_root()时发生时钟中断的情形。第一行和第二行和第三行的前两个字是时钟中断压入堆栈的第四行最后一个字,0x000120f9是sys_setup()函数中mount_root()调用后的返回地址。第四行的前3个字和第三行的后2个字,共5个字是mount_root函数中压入堆栈的,分别是ebp,未知,edi,esi和ebx。
sitelist
·
2020-08-24 16:16
linux-0.11
源码分析:内存管理
linux/mm/memory.c/*passed*linux/mm/memory.c**(C)1991LinusTorvalds*/#include/**需求加载是从01.12.91开始编写的-在程序编制表中似乎是最重要的程序,*并且应该是很容易编制的-linus*//**OK,需求加载是比较容易编写的,而共享页面却需要有点技巧。共享页面程序是*02.12.91开始编写的,好象能够工作-Linu
hades2013
·
2020-08-24 02:06
1.
linux-0.11
的保护模式分析
1.几个问题1.在linux和windows等系统中,都是需要开启MMU的,也就是内存管理单元。使用MMU有什么必要性?答:在单片机中,我们所有的代码都是自己管理的。简单的说,单片机的所有代码,都是直接烧写进去,然后就跑起来。当然,在stm32这种单片机中,我们可以烧写一个程序,然后在运行的过程中,动态的再去加载另外一个程序,这归结起来,其实还是只有程序,一旦一个程序崩溃,整个系统将会完蛋。而使用
wit_yuan
·
2020-08-23 03:14
setup.s 解读——
Linux-0.11
剖析笔记(三)
题目:setup.s解读——
Linux-0.11
剖析笔记(三)更新记录版本时间修订内容1.02018-4-14增加了“获取显示模式”这一节,AL取值的表格2.02020-6-27补充了一些内容本文由setup.s
车子 chezi
·
2020-08-18 22:56
Linux-0.11
Linux学习笔记(linux 0.11完全注释)
Linux-0.11
版本发布时包括以下文件:bootimage.Z--具有
iteye_11821
·
2020-08-18 20:08
内存管理
运维
shell
操作系统重要数据结构
1:存在80387协处理器;0:存在80287协处理器(
Linux-0.11
);任务切换位TS(Ta
猫和鱼爪
·
2020-08-17 19:22
操作系统
可以运行的linux-0.00和
linux-0.11
这两个版本的linux都是根据赵炯的>修正版V3.0整理出来的.已经在Ubuntu12.04.1版本(bochs2.4.6)上运行过https://github.com/voidccc/linux0.00https://github.com/voidccc/linux0.11linux0.00说明:这是一个假想中的版本,并不是由Linus所写,因为当时Linux写好这个版本后,由于不小心错误地用m
voidccc
·
2020-08-17 15:18
kernel
Linux内核分析-4/5/系统调用
Linux内核分析》MOOC课程Linux内核分析-4/系统调用Linux内核分析-5/系统调用文章详解1/解释了系统调用所在的层次2/系统调用接口的过程(无代码)3/系统调用的不常用的两种调用方式4/
linux
__pop_
·
2020-08-17 15:07
Linux内核分析
Ubuntu编译linux 1.2.13 内核
1.前言一直对linux内核很感兴趣,读书的时候也看过赵炯博士写的
linux-0.11
内核分析,但是当时只是匆匆看了一遍,时至今日已经忘的差不多了。
XiaZhanglong
·
2020-08-09 19:22
linux
main() 函数解析(一)——
Linux-0.11
剖析笔记(六)
文章目录1.宏定义`_syscall0`2.`setup.s`读取的参数3.读取CMOS实时时钟信息3.1`outb_p(value,port)`3.2`inb_p(port)`3.3`outb(value,port)`和`inb(port)`3.4CMOS与RTC3.5time_init函数4.main函数4.1根设备号4.2复制硬盘参数表4.3计算主内存起始位置4.4虚拟盘4.5`mem_in
车子 chezi
·
2020-08-09 13:15
Linux-0.11
故障解决:error while loading shared libraries: libncurses.so.5
故障解决:errorwhileloadingsharedlibraries:libncurses.so.5问题的提出在我准备调试
Linux-0.11
内核的时候,出现了如下故障(真奇怪,以前没有这个问题啊
车子 chezi
·
2020-08-09 05:15
Linux-0.11
Linux-0.11
实验笔记
操作系统是一个非常复杂的体系,对新手极不友好,其中各个知识的牵连也十分紧密,也许你仅仅想要对进程切换做修改,但是同时还要在全局上非常清楚自己修改的地方处于整体什么位置,和别的模块或者构件有着什么样子的联系。一旦修改,别的与之相关联的地方是否需要改动?或者出现了错误之后你知道应该怎么确定错误?最最可怕的就是,例如对于进程切换的修改,身为新手的我们对于一些实现细节的隐性知识根本不知道,除非自己在全局上
Little Prince~
·
2020-08-08 20:35
内核
linux
操作系统
Linux-0.11
操作系统实验3-进程运行轨迹的跟踪与统计
实验环境:进程运行轨迹的跟踪与统计实验任务:基于模板process.c编写多进程的样本程序,实现如下功能:所有子进程都并行运行,每个子进程的实际运行时间一般不超过30秒;父进程向标准输出打印所有子进程的id,并在所有子进程都退出后才退出;在Linux0.11上实现进程运行轨迹的跟踪。基本任务是在内核中维护一个日志文件/var/process.log,把从操作系统启动到系统关机过程中所有进程的运行轨
蓁叶
·
2020-08-05 15:38
Linux-0.11OS
Linux-0.11
操作系统实验1-操作系统引导
实验环境:实验楼之操作系统引导实验理论:bootsect.sbootsect.s被BIOS启动子程序加载至0x7c00(31k)处,并将自己移到了地址0x90000(576k)处,并跳转至那里。然后使用BIOS中断INT0x13将’setup’直接加载到自己的后面(0x90200)(576.5k),同时读取磁盘参数表中当前启动引导盘的参数,共读4个扇区,即将setup模块从磁盘加载到内存。屏幕上显
蓁叶
·
2020-08-05 15:38
Linux-0.11OS
head.s 剖析——
Linux-0.11
剖析笔记(五)
文章目录一、加载段寄存器LSS指令二、设置中断描述符表(IDT)中断处理过程`ignore_int`三、设置全局描述符表(GDT),加载GDTR四、重新加载段寄存器五、检测A20是否开启六、检测`x87`协处理器关于异或按位异或的3个特点按位异或的几个常见用途1.使某些特定的位翻转2.不使用临时变量就可以实现两个值的交换3.在汇编语言中经常用于将变量置零4.快速判断两个值是否相等七、开启分页,跳转
车子 chezi
·
2020-08-02 14:32
Linux-0.11
Linux
0.11
对linux 0.11版本中switch_to()的理解
switch_to的代码在
linux-0.11
\include\linux中的sched.h。
heiworld
·
2020-07-15 23:14
linux
0.11版本内核学习笔记
windows上可编译Linux内核
编译过程:1).解压后默认的文件夹位置是在D:\
Linux-0.11
,如果你不是将文件解压到该目录下,你要修改MinGW32目录下的MinGW32.bat文件,将里面的PATH指向MinGW32的bin
足球中国
·
2020-07-06 11:06
上一页
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
其他