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
gdt
linux设备模型之mmc,sd子系统<三>
转载请注明出处:http://blog.csdn.net/
gdt
_a20-----------------------------------------------------------####看一下重要的卡扫描函数
gdt_A20
·
2012-02-01 22:00
linux设备模型之mmc,sd子系统<二>
转载请注明出处:http://blog.csdn.net/
gdt
_a20-----------------------------------------------------------继续上一篇文章
gdt_A20
·
2012-02-01 18:00
ios
c
linux
struct
command
delay
linux设备模型之mmc,sd子系统<一>
转载请注明出处:http://blog.csdn.net/
gdt
_a20------------------------------------------------------------sd卡driver
gdt_A20
·
2012-02-01 14:00
c
linux
struct
reference
protocols
recursion
linux启动流程导读(arm为例)<二>
转载请注明出处:http://blog.csdn.net/
gdt
_a20/article/details/7220389=========================================
gdt_A20
·
2012-01-30 18:00
c
linux
struct
command
UP
linux启动流程导读(arm为例)<一>
转载请注明出处:http://blog.csdn.net/
gdt
_a20/article/details/7220389=========================================
gdt_A20
·
2012-01-30 18:00
linux
manager
table
domain
alignment
structure
linux中断导读之--处理流程
转载请注明出处:http://blog.csdn.net/
gdt
_a20==================================前面大致把处理流程都稍代说了,这里总结下大概过程,跳过前面的已经说过的中断汇编部分
gdt_A20
·
2012-01-30 14:00
linux
汇编
action
linux中断导读之--注册部分
转载请注明出处:http://blog.csdn.net/
gdt
_a20==================================前面介绍了中断的初始化代码,稍带着执行流程也过的差不多了这里看下我们经常碰到的中断的注册
gdt_A20
·
2012-01-30 14:00
thread
linux
struct
function
action
nested
linux中断导读之--初始化<2>
转载请注明出处:http://blog.csdn.net/
gdt
_a20==================================继续上一篇,看一下中断向量表初始化部分:代码在init/main.c-start_kernel
gdt_A20
·
2012-01-30 13:00
linux
exception
struct
vector
domain
branch
linux中断导读之--初始化<1>
转载请注明出处:http://blog.csdn.net/
gdt
_a20==================================看一下linux中断部分,分为三部分,初始化,处理流程以及注册流程
gdt_A20
·
2012-01-30 11:00
thread
linux
timer
struct
null
action
保护模式跳回实模式的normal descriptor(续)
blog.csdn.net/ruyanhai众所周知,保护模式下,
GDT
存储在内存中,为了加快访问
GDT
中相关描述符的速度,x86系列C
ruyanhai
·
2012-01-17 16:00
ucore-project5: mm(4)
ucore lab2 project5中首先设置了一个临时
gdt
,将base地址设置为-0xC0000000,这样在后续所有地址访问中,地址都会与这个base地址相加,
spartan1
·
2012-01-09 00:00
project
实模式跳转保护模式,代码全注释
下面是第3章pmtest1.asm的全注释总结执行过程如下:初始化32位代码段的段基址,并存储到
GDT
中对应的描述符中准备
GDT
的基地址,并通过LGDT指令加载到GDTR寄存器中cli关中断打开地址线A20
ruyanhai
·
2012-01-06 18:00
video
dos
存储
include
byte
Descriptor
段界限为什么要减1
在orange's一个操作系统的实现,第3章,pmtest1.asm中,有如下代码 GdtPtr dw GdtLen-1 ;
GDT
界限我们知道一个描述符中包含段基址和段界限,那么如果GdtLen
ruyanhai
·
2012-01-06 15:00
为什么全局描述符表
GDT
的第0项总是一个空描述符
GDTR(48位)用于描述
GDT
的基址和界限LDTR(16位)用于描述当前任务的LDT在
GDT
中的选择子。如果一个任务没有LDT,就会把LDTR清空,此时指向
GDT
中的第0项描述符,即为空描述符。
ruyanhai
·
2012-01-06 14:00
c
null
存储
语言
任务
《一个操作系统的实现》读书笔记--第三章--保护模式
================================== %include"pm.inc";常量,宏,以及一些说明 org0100h jmpLABEL_BEGIN [SECTION.
gdt
zgh1988
·
2011-12-24 00:00
保护模式
实模式
段描述符
选择子
段描述符表
ucore-project5: mm(2)
看内核刚进入时加载临时
gdt
的代码: lgdt __gdtdesc - KERNBASE .data
gdt
: ...
spartan1
·
2011-12-20 00:00
project
WinixJ---kernel/init.s文件详解
因此它最急需的工作当然是进行保护模式的重新初始化,包括重新加载
gdt
,以及开启分页机制、加载idt,跳入到c代码运行,先贴代码吧: 1 PARAM_ADDR equ 0xf0000 ; 在laoder
myjfm
·
2011-12-20 00:00
ucore-project4: interrupt -- 搞定第一个中断:timer
第二个工程project4.1主要添加了用户态段和一个TSS段,重新初始化
gdt
,并加载了一个TSS 第三个工程project4.1.1实现用户态和内核态的切换,主要通过修改int中断,在中断处
spartan1
·
2011-12-05 23:00
interrupt
Linux下的段错误调试方法
或者根本就不存在对应的物理内存,尤其常见的是访问0地址.一般来说,段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,他是一个48位的寄存器,其中的32位是保存由它指向的
gdt
Qoo_wzp
·
2011-12-02 11:00
linux
function
cmd
library
编译器
Signal
OS相关
这只是在
GDT
中最多索引的描述符个数,另外每个进程都可以有自己的LDT。 处理器会保留第一个
GDT
中的描述符,它应当被清0,不应当用作访问内存使用。
cos_sin_tan
·
2011-11-27 09:00
Linux系统内存错误产生的原因及调试方法
或者根本就不存在对应的物理内存,尤其常见的是访问0地址.一般来说,段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,他是一个48位的寄存器,其中的32位是保存由它指向的
gdt
RunBoying
·
2011-11-23 23:00
linux
function
cmd
library
编译器
Signal
操作系统分页分段小笔记
以前看分页分段时记得笔记,今天无意翻出来发现记得还挺好的,虽然当时貌似看的不怎么懂,博客发下分段机制:CS,DS,ES,FS,GS,SS 段选择器高13位表示索引(从0开始)第二位TI=0在
GDT
中,TI
evi10r
·
2011-11-21 16:00
cache
扩展
ucore-project1: boot(3),终于搞定了
实际上昨晚还有最初还有另外一个问题:
gdt
中的segment descriptor创建出错,本来应该是((type & 0x0F) | 0x90),结果写成了((type & 0x0F)
spartan1
·
2011-11-20 12:00
project
电脑与操作系统
昨晚上拿起xv6的代码想好好看看,忽然发现一堆pagetable、
gdt
、gatedesc,感觉提不起兴趣,为什么会这样?
spartan1
·
2011-11-16 23:00
操作系统
读书笔记_跨特权级调用
调用门的全称是调用门描述符( Call-Gate Descriptor),其结构与中断描述符非常类似,调用门描述符可以出现在
GDT
和LDT表中,不可以出现在IDT表中。
wodamazi
·
2011-11-14 13:00
读书笔记
写一个操作系统
OS,现在看来基础功能已经实现了,并且在用户态也跑起了一个简单的shell,简单记下编写的历程:1.写一个bootloader,磁盘启动,获取内存的(e820)映射表,加载内核,进入保护模式2.初始化
gdt
chobit_s
·
2011-11-12 18:00
linux
算法
shell
OS
磁盘
段错误
所谓的段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,他是一个48位的寄存器,其中的32位是保存由它指向的
gdt
表,后13位保存相应于
gdt
的下标,最后3位包括了程序是否在内存中以及程序的在
huangqinqin
·
2011-10-31 20:00
错误
Linux下的段错误(segmentation fault)产生的原因及调试方法
或者根本就不存在对应的物理内存,尤其常见的是访问0地址.一般来说,段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,他是一个48位的寄存器,其中的32位是保存由它指向的
gdt
iamlate
·
2011-10-17 17:00
Linux下运行C++程序产生“段错误”的原因及其解决办法
一般来说,段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,它是一个48位的寄存器,其中的32位是保存由它指向的
gdt
表,后13位保存相应于
gdt
的下标,最后3位包括了程序是否在内存中以及程序在
lxjames833539
·
2011-10-15 20:00
C++
linux
function
cmd
library
Signal
CPL, 门DPL, 描述符DPL 的关系
1.CPL要通过门(中断门,陷阱门,任务门,调用门)访问一个
GDT
中的描述符,必须有如下关系:CPL=DPL(描述符):门只能是用于保持或提升运行级别,因此
GDT
的描述符中的DPL均为0。
yarsen
·
2011-09-29 14:00
System
任务
Linux下的段错误(segmentation fault)产生的原因及调试方法
或者根本就不存在对应的物理内存,尤其常见的是访问0地址.一般来说,段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,他是一个48位的寄存器,其中的32位是保存由它指向的
gdt
YEYUANGEN
·
2011-09-26 13:00
linux
function
cmd
library
编译器
Signal
debug kernel with qemu
http://fengye110.72pines.com/archives/62http://blog.csdn.net/
gdt
_a20/article/details/72316521.内核cd linuxmkdirbuild
RichardYSteven
·
2011-09-08 19:00
c
虚拟机
tcp
脚本
一个操作系统的实现:保护模式
;表示以下为段位16位org 07c00h ;这是由于系统会将代码加载到7C00处jmpstartgdt_table_start:
gdt
_null
glorin
·
2011-09-06 19:00
如何写Descriptor的属性
每次写完了
gdt
的一条entry的时候,总是很痛苦到底该写什么属性,而且偶尔会拉下一些属性。
lhq9220
·
2011-08-31 22:00
数据结构
c
Descriptor
使用Assembly和c联合写kernel的时候,新的理解
对unsignedchargdt_ptr[6]数组的操作汇编中:sgdt [
gdt
_ptr]--------[]符号使得汇编的时候将其汇编成 sgdt ds:
gdt
_ptr。
lhq9220
·
2011-08-30 22:00
c
汇编
assembly
编译器
Linux下的段错误产生的原因及调试方法
或者根本就不存在对应的物理内存,尤其常见的是访问0地址.一般来说,段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,他是一个48位的寄存器,其中的32位是保存由它指向的
gdt
Mirage520
·
2011-08-17 14:00
操作系统引导探究 (Version 0.02)
转载文章»操作系统引导探究(Version0.02)操作系统引导探究(Version0.02)哈尔滨工业大学计算机体系结构实验室谢煜波(
[email protected]
)Version0.02修改记录:对与
GDT
junecau
·
2011-08-15 22:00
数据结构
linux
工作
System
电信
磁盘
有关操作系统保护模式中的 shl eax 4 这条语句的意思
GdtLenEQU$-LABEL_
GDT
源代码是这样的:GdtPtrDWGdtLen-1DD0XOREAX,EAXMOVAX,DSSHLEAX,4ADDEAX,LABEL_GDTMOVDWORD[GdtPtr
SunnyBeiKe
·
2011-08-11 14:00
如何添加LDT到
GDT
中
(写给自己看的,路过的勿骂)首先说明下
GDT
,
gdt
=globaldescriptortable。保护模式下的索引每个段的表。
lhq9220
·
2011-07-26 23:00
数据结构
c
table
任务
Descriptor
保护模式\
GDT
\Boot等概念的扫盲
保护模式\
GDT
\Boot等概念的扫盲主要看了下特权级这块,和上次看的保护模式下寻址,发现于渊的书有个问题,很多地方为了回避繁杂的理论,反而把一些要点略去了,最后自己还是不得不到网上到处查资料~以下内容貌似是一个即将毕业的学长做毕设所总结的
bestcpp
·
2011-07-24 23:00
中断描述符表
在第二章中,我们介绍了
GDT
和LDT,IDT的格式与这两种表的格式非常相似,表中的每一项对应一个中断或异常微量,每个向量由8个字节组成。因此,最多需要256*8=2048字节来存放IDT。
zhw888888
·
2011-07-12 07:00
linux设备模型之led子系统
转载请注明出处:http://blog.csdn.net/
gdt
_a20==================================时代不同了,连led都成子系统了,针对内核提供的通用模型,分析一下
gdt_A20
·
2011-07-11 16:00
Linux下的段错误产生的原因及调试方法
或者根本就不存在对应的物理内存,尤其常见的是访问0地址.一般来说,段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,他是一个48位的寄存器,其中的32位是保存由它指向的
gdt
arau_sh
·
2011-06-29 15:00
linux
function
cmd
library
编译器
Signal
linux head.s 详解
其中初始设置工作主要包括:①重新设置
GDT
表;②设置系统定时器芯片;③重新设置IDT表并且设置时钟和系统调用中断门;④移动到任务A中执行。在虚拟地址空间中head.
ccccdddxxx
·
2011-06-26 16:00
c
工作
timer
linux
System
任务
Linux下的段错误的原因及调试
或者根本就不存在对应的物理内存,尤其常见的是访问0地址.一般来说,段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,他是一个48位的寄存器,其中的32位是保存由它指向的
gdt
hejianhua
·
2011-06-21 17:00
一致代码段和非一致代码段
操作系统就引入了访问特权等级(0-3)的机制.这些特权等级,通过三个符号来体现CPL/DPL/RPL.其中CPL是存寄存器如CS中,RPL是代码中根据不同段跳转而确定,以动态刷新CS里的CPL.DPL是在
GDT
tony821224
·
2011-06-18 19:00
OS
存储
任务
Descriptor
X86
数学计算
linux boot.s
这次的boot.s和上一篇不同,boot程序的主要功能是把软盘或映像文件中的head内核代码加载到内存某个指定位置处,并在设置好临时
GDT
表等信息后,把处理器设置成运行在保护模式下,然后跳转到head代码处去运行内核代码
ccccdddxxx
·
2011-06-12 00:00
linux
汇编
System
扩展
Descriptor
磁盘
[置顶] linux设备模型之spi子系统
转载请注明出处:http://blog.csdn.net/
gdt
_a20=============================== 相比于前面介绍的i2c子系统,spi子系统相对简单,和i2c
gdt_A20
·
2011-05-22 16:00
[置顶] linux设备模型之i2c子系统
转载请注明出处:http://blog.csdn.net/
gdt
_a20=============================== I2c子系统将i2c控制器(i2c寄存器所在的那块电路)抽象出来
gdt_A20
·
2011-05-20 00:00
c
linux
list
struct
table
Class
[置顶] linux设备模型之platform
转载请注明出处:http://blog.csdn.net/
gdt
_a20=============================== platform可以说是内核抽象出来的一条虚拟总线平台,内核开发者原意是想把硬件层次上的结构关系用软件抽象模拟出来
gdt_A20
·
2011-05-18 14:00
linux
struct
list
null
平台
resources
上一页
10
11
12
13
14
15
16
17
下一页
按字母分类:
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
其他