当前位置:网站首页>Dynamic loading and execution of programs
Dynamic loading and execution of programs
2022-06-12 16:33:00 【raindayinrain】
The kernel cannot be placed in the primary boot sector , Because it's big . The computer should start from the main boot program , The main boot program is responsible for loading the kernel , And transfer control . The kernel is responsible for loading user programs , And provide various routines for the user program to call . The routines provided to user program calls are called application program interfaces .
Learning objectives in this chapter :
1. Understand that protected mode is a technology for the operating system , It does not burden the programming of ordinary applications .
2. Learn the general principles of operating system loading and relocating applications in protected mode . Learn simple memory allocation , Understand the application program interface API Simple principle of .
3. Learn some x86 New instructions for the processor , Include bswap,cupid,cmovcc,sgdt,movzx,movsx,cmpsb,cmpsw,cmpsd and xlat etc. .
13.1. Code list of this chapter
13.2. The structure of the kernel , Function and load
13.2.1. The structure of the kernel
The kernel is divided into four parts , They are the initialization code , Kernel code snippet , Kernel data segment , Common routine segment , The main bootstrap is also part of the initialization code .
The initialization code is used to start from BIOS It takes control of the processor and computer hardware , Install the most basic segment descriptor , Initialize the initial execution environment . then , Read and load the rest of the kernel from the hard disk , Create the memory segments that make up the kernel .
Pseudo instruction equ We are only allowed to substitute symbols for specific values , But declared values do not take up space .
13.2.2. Kernel loading
边栏推荐
- generate pivot data 1
- 【摸鱼神器】UI库秒变LowCode工具——列表篇(一)设计与实现
- Leetcode 2194. Cells within a range in Excel table (yes, solved)
- Interview: hashcode() and equals()
- Exception assertion of assertj
- The C Programming Language(第 2 版) 笔记 / 8 UNIX 系统接口 / 8.2 低级 I/O(read 和 write)
- Leetcode 2194. Cellules dans une plage dans un tableau Excel (OK, résolu)
- PostgreSQL source code (53) plpgsql syntax parsing key processes and function analysis
- MySQL interview arrangement
- GloVe词嵌入(IMDB电影评论情感预测项目实战)
猜你喜欢
随机推荐
Daily question -890 Find and replace mode
Object.keys遍历一个对象
Acwing 1927 automatic completion (knowledge points: hash, bisection, sorting)
1.delete
acwing 802. Interval sum (discretization)
The C programming language (version 2) notes / 8 UNIX system interfaces / 8.6 instances (directory list)
VIM from dislike to dependence (16) -- macro
Nacos Config 动态刷新源码剖析
Multimix: small amount of supervision from medical images, interpretable multi task learning
acwing 2816. Judgement subsequence
试用期、加班补偿———进厂前后需要了解的知识《劳动法》
【DSP视频教程】DSP视频教程第8期:DSP库三角函数,C库三角函数和硬件三角函数的性能比较,以及与Matlab的精度比较(2022-06-04)
Acwing 1927 自动补全(知识点:hash,二分,排序)
h t fad fdads
收藏 | 22个短视频学习Adobe Illustrator论文图形编辑和排版
The C programming language (2nd Edition) notes / 7 input and output / 7.8 other functions
<山东大学项目实训>渲染引擎系统(三)
Acwing795 prefix sum (one dimension)
Glove word embedding (IMDb film review emotion prediction project practice)
Learning notes of MySQL series by database and table









