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

操作系统内核中的初始化工作

看完了进入内核前的工作后,我网络编程课的抄写作业自然是可以圆满完成啦,不过看了一部分后觉得确实很有意思,所以也是决定继续看下去,并且计划看完linux源码后跟着MIT6.s081写一个小的操作系统内核,...诶这个时候我们是不是又会想起来在进入Linux内核前的准备一文中提到过的INT指令,例如INT 0x80这个指令就是相当于直接告诉CPU中断号0x80。...那至于这里提到的中断描述符表IDT,我们也在进入Linux内核前的准备一文中设置GDT这一段中提到过啦,IDT从idtr寄存器中可以找到,而idt这个表采用的是一个结构体数组的方式进行存储,对应的内容就是上面提到的段选择子和段内偏移地址啦...终端设备是指人和计算机互动的设备,这里的tty指的是两种字符设备,串行端口的串行终端设备和控制台设备(鼠标键盘),tty_init这个函数的作用就是初始化串行中断程序和串行接口1、2以及控制台终端。...到这里我们就讲完了tty_init,和此后,我们就可以方便地在控制台输出字符了。 时间初始化 接下来是time_init(),这个函数主要用于初始化时间。

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

【驱动】串口驱动分析(二)-tty core

前言 tty这个名称源于电传打字节的简称,在linux表示各种终端,终端通常都跟硬件相对应。比如对应于输入设备键盘鼠标,输出设备显示器的控制终端和串口终端。也有对应于不存在设备的pty驱动。...在如此众多的终端模型之中,linux是怎么将它们统一建模的呢?这就是我们今天要讨论的问题。 tty驱动概貌 tty架构如下所示: 如上图所示,用户空间主要是通过系统调用与tty core交互。...那在设备的中断处理中调用receive_buf()将数据写入即可. tty驱动接口分析 tty_init() /* * Ok, now we can initialize the rest of the...tty devices and can count * on memory allocations, interrupts etc.. */ int __init tty_init(void) {...IS_ERR(consdev)) consdev = NULL; #ifdef CONFIG_VT vty_init(&console_fops); #endif return 0; } tty_init

47550

Linux - Linux内存管理

为了解决内存紧缺的问题,Linux引入了虚拟内存的概念。为了解决快速存取,引入了缓存机制、交换机制等。...要深入了解Linux内存运行机制,需要知道下面提到的几个方面。 首先,Linux系统会不时地进行页面交换操作,以保持尽可能多的空闲物理内存。...其次,Linux进行页面交换是有条件的,不是所有页面在不用时都交换到虚拟内存中,Linux内核根据“最近最经常使用”算法,仅仅将一些不经常使用的页面文件交换到虚拟内存中。...Linux虽然可以在一段时间内自行恢复,但是恢复后的系统已经基本不可用了。...Linux下可以使用文件系统中的一个常规文件或者一个独立分区作为交换空间。同时Linux允许使用多个交换分区或者交换文件。

52.2K41

Linux】--- Linux权限概念

shell 对于Linux,有相同的作用,主要是对我们的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运行出结果,通过shell解析给用户。...2.3 Linux中的用户 Linux下有两种用户:超级管理员(root)、普通用户。 超级管理员(root):可以再linux系统下做任何事情,不受权限约束 普通用户:在linux下做有限的事情。...Linux具有组的概念,主要是在多人协作的时候,更好的进行权限管理!...而在Linux中不通过后缀区分文件类型!但并不是说Linux不用后缀。 那通过什么区分呢?即ls -l第一个属性列。 Linux文件类型: -:普通文件。...很简单一个道理,Linux系统不以文件后缀作为区分文件类型的依据,但并不代表gcc不需要,Linux系统 != gcc。

9411

LinuxLinux基本指令(3)

.tar.gz   的缩写 例:tar  czf xx.tgz  tar  tzf  xx.tgz tar  xzf  xx.tgz 若是想要解压到指定路径 ,可以使用选项 :-C  路径  Linux...七.bc  指令 这个指令很简单,可以认为是Linux上的计算器。 ...八.uname –r指令 语法:uname [选项] 功能: uname用来获取电脑和操作系统的相关信息; 补充说明:     uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息...「Tab」「ctrl+c」「ctrl+d」「ctrl+r」热键 「Tab」:具有指令补齐的作用 这个要连续按两下,担忧的版本的Linux并不支持; 「ctrl+c」:终止当前的程序 这个热键其实很好用...遇到什么情况时,直接无脑 「ctrl+c」就可以退出; 「ctrl+d」:当我们用 su 指令切到另一个用户时,可以「ctrl+d」退回到原来的用户 例: 「ctrl+r」:搜索历史指令,Linux

10611

Linuxlinux工具和命令

一、Linux常用命令: ls 显示当前目录下的文件 ls-a 显示当前目录下所有文件(包括隐藏文件) ls -l 显示文件和目录的详细资料 (属性,日期,时间,大小等) ls -al...(路径) 把路径添加到PATH环境变量中 chmod u(拥有者)/g(所属组)/o(其它)+/- rwx +文件名 修改文件权限 二、Linux安装软件: 一、Linux...安装软件: 1.源代码安装 2.rpm安装 --Linux安装包 3.yum安装 --解决安装源,安装版本,安装依赖 4.什么是软件包在Linux下安装软件, 一个通常的办法是下载到程序的源代码...yum(Yellow dog Updater, Modifified)是Linux下非常常用的一种包管理器....其实这是因为,下载链接其实已经在yum源进行了内置,所以知道去哪里下载,一般Linux操作系统,默认配置的yum源是国外的,访问速度很慢,我们需要替换yum文件,更新yum源(几行命令罢了,直接网上一查即可

21420
领券