当前位置: 首页 > article >正文

Linux0.11 根文件系统挂载(四)

系列文章目录


Linux 0.11启动过程分析(一)
Linux 0.11 fork 函数(二)
Linux0.11 缺页处理(三)
Linux0.11 根文件系统挂载(四)


文章目录

  • 系列文章目录
  • 一、起源
  • 二、系统调用
    • 1、引入库
    • 2、读入数据
  • 三、补充配置
    • 1、空格
    • 2、文字颜色
    • 3、文字大小
    • 4、字体
    • 5、背景色
    • 6、文章转载
    • 7、代码片
  • 总结


一、起源

在init/main.c文件中有init函数,其开头有如下代码:

static inline _syscall1(int, setup, void *, BIOS)
 
void init(void) {
  int pid, i;
 
  setup((void *)&drive_info);
  //...
}
 
// 而_syscall1 在include/unistd.h中,定义为:
#define __NR_setup	0	/* used only by init, to get system going */
 
#define _syscall1(type,name,atype,a) \
type name(atype a) \
{ \
long __res; \
__asm__ volatile ("int $0x80" \
	: "=a" (__res) \
	: "0" (__NR_##name),"b" ((long)(a))); \
if (__res >= 0) \
	return (type) __res; \
errno = -__res; \
return -1; \
}

init 函数中,setup 函数实现了根文件系统挂载功能。setup 函数由宏 _syscall1(int, setup, void *, BIOS) 定义,其展开后为(可参考:Linux 0.11 fork 函数(二) ):

// __NR_##name 展开后为 __NR_setup, 而其又是一个宏定义,值为0
#define __NR_setup	0	/* used only by init, to get system going */
 
// 展开后
static inline int setup(void* BIOS) {
    long __res; 
    __asm__ volatile ("int $0x80" 
	    : "=a" (__res) 
	    : "0" (0),"b" ((long)(a))); 
    if (__res >= 0) 
	    return (type) __res; 
    errno = -__res; 
    return -1;   
}

二、系统调用

setup 函数是个系统调用,其响应函数 system_call 函数定义在 kernel/system_call.s 文件中。其最后会调用 sys_setup 函数。

1、引入库

代码如下(示例):

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import  ssl
ssl._create_default_https_context = ssl._create_unverified_context

2、读入数据

代码如下(示例):

data = pd.read_csv(
    'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())

该处使用的url网络请求的数据。

三、补充配置

1、空格

  为“全角空格”
  为“全角空格”
  为“不换行空格”

2、文字颜色

浅红色文字:<font color="#dd0000">浅红色文字:</font><br /> 
深红色文字:<font color="#660000">深红色文字</font><br /> 
浅绿色文字:<font color="#00dd00">浅绿色文字</font><br /> 
深绿色文字:<font color="#006600">深绿色文字</font><br /> 
浅蓝色文字:<font color="#0000dd">浅蓝色文字</font><br /> 
深蓝色文字:<font color="#000066">深蓝色文字</font><br /> 
浅黄色文字:<font color="#dddd00">浅黄色文字</font><br /> 
深黄色文字:<font color="#666600">深黄色文字</font><br /> 
浅青色文字:<font color="#00dddd">浅青色文字</font><br /> 
深青色文字:<font color="#006666">深青色文字</font><br /> 
浅紫色文字:<font color="#dd00dd">浅紫色文字</font><br /> 
深紫色文字:<font color="#660066">深紫色文字</font><br /> 

​​在这里插入图片描述

3、文字大小

size为1:<font size="1">size为1</font><br /> 
size为2:<font size="2">size为2</font><br /> 
size为3:<font size="3">size为3</font><br /> 
size为4:<font size="4">size为4</font><br /> 
size为10:<font size="10">size为10</font><br /> 

在这里插入图片描述

4、字体

<font face="黑体">我是黑体字</font>
<font face="宋体">我是宋体字</font>
<font face="微软雅黑">我是微软雅黑字</font>
<font face="fantasy">我是fantasy字</font>
<font face="Helvetica">我是Helvetica字</font>

在这里插入图片描述

5、背景色

<table>
    <tr>
        <td bgcolor=#FF00FF>背景色的设置是按照十六进制颜色值:#7FFFD4</td>		</tr>
</table>
<table>
    <tr>
        <td bgcolor=#FF83FA>背景色的设置是按照十六进制颜色值:#FF83FA
        </td>
    </tr>
</table>
<table>
    <tr>
        <td bgcolor=#D1EEEE>背景色的设置是按照十六进制颜色值:#D1EEEE
        </td>
    </tr>
</table>
<table>
    <tr>
        <td bgcolor=#C0FF3E>背景色的设置是按照十六进制颜色值:#C0FF3E
        </td>
    </tr>
</table>
<table>
    <tr>
        <td bgcolor=#54FF9F>背景色的设置是按照十六进制颜色值:#54FF9F
        </td>
    </tr>
</table>
<table>
    <tr>
        <td bgcolor=DarkSeaGreen>这里的背景色是:DarkSeaGreen,此处输入任意想输入的内容
        </td>
    </tr>
</table>

在这里插入图片描述

6、文章转载

文章作者(任意想输入的汉字), <a href="转载文章的网址">转载文章的名称</a>

在这里插入图片描述

7、代码片

名称关键字调用的js说明
AppleScriptapplescriptshBrushAppleScript.js
ActionScript 3.0actionscript3 , as3shBrushAS3.js
Shellbash , shellshBrushBash.js
ColdFusioncoldfusion , cfshBrushColdFusion.js
Ccpp , cshBrushCpp.js
C#c# , c-sharp , csharpshBrushCSharp.js
CSScssshBrushCss.js
Delphidelphi , pascal , passhBrushDelphi.js
diff&patchdiff patchshBrushDiff.js用代码版本库时,遇到代码冲突,其语法就是这个
Erlangerl , erlangshBrushErlang.js
GroovygroovyshBrushGroovy.js
JavajavashBrushJava.js
JavaFXjfx , javafxshBrushJavaFX.js
JavaScriptjs , jscript , javascriptshBrushJScript.js
Perlperl , pl , PerlshBrushPerl.js
PHPphpshBrushPhp.js
texttext , plainshBrushPlain.js就是普通文本
Pythonpy , pythonshBrushPython.js
Rubyruby , rails , ror , rbshBrushRuby.js
SASS&SCSSsass , scssshBrushSass.js
ScalascalashBrushScala.js
SQLsqlshBrushSql.js
Visual Basicvb , vbnetshBrushVb.js
XMLxml , xhtml , xslt , htmlshBrushXml.js
Objective Cobjc , obj-cshBrushObjectiveC.js
F#f# f-sharp , fsharpshBrushFSharp.js
xppxpp , dynamics-xppshBrushDynamics.js
Rr , s , splusshBrushR.js
matlabmatlabshBrushMatlab.js
swiftswiftshBrushSwift.js
GOgo , golangshBrushGo.js

总结

提示:这里对文章进行总结:

例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。


http://www.kler.cn/a/4841.html

相关文章:

  • unity 播放 序列帧图片 动画
  • 深度学习与计算机视觉 (博士)
  • 请求方式(基于注解实现)
  • 计算机网络(四)网络层
  • Python 正则表达式完全指南
  • 机器学习笔记合集
  • leetcode 珠玑妙算
  • 腾讯云服务器创建快照备份数据的方法
  • NoSQL数据库简介
  • USTB校园网一键登录开机自动登录
  • 行为识别SlowFast笔记--环境配置和Demo展示
  • labview节点公式节点反馈节点表达节点属性节点
  • 大数据框架之Hive:第10章 分区表和分桶表
  • 在线教学视频课程如何防止学员挂机?
  • 蓝牙耳机选哪个品牌好?便宜质量好的蓝牙耳机推荐
  • 阿里巴巴一起买商品推荐 API 返回值说明
  • docker环境安装mysql、canal、elasticsearch,基于binlog利用canal实现mysql的数据同步到elasticsearch中
  • 举一反三学python(2)—函数应用
  • C++中的多重继承
  • 如何评价2023美赛春季赛YZ题加赛 大学生数学建模
  • mybatis核心配置文件
  • Java Web程序设计——Servlet的认识和创建
  • 【Linux】进程程序替换
  • Spring入门篇7 --- spring事务
  • HTTP 重定向状态码是什么意思?
  • 组提交_并行复制