Just for fun
系统异常处理 CPU如果调用系统异常处理程序 需要的数据结构 IDT_Table: 中断向量表, 在中断向量表中的每一项都是一个中断描述符(中断门或者陷阱门), 一个中断描述符中的几位是段选择符 GDT或者LDT 处理过程(没有特权变化的情况),在处理中断和异常的时候, 需要处理程序, 注意: ...
macOS 使用软件(外加装逼特效) Backgroud 和 火萤: 动态桌面壁纸 iTools Pro: macOS 版本的爱思助手 MEGAsync: 网盘工具 Microsoft Remote Desktop: 远程连接windows npm install yddict -g: 安装yd,...
节点之间的通信 数据报文的封装(自上而下) http tcp ip mac(讯框) 数据报文的源ip和目标ip是不变的(在内网中, 如果考虑到连接到外部网路的时候, 如果有路由器(里面有嵌入式的Linux或者Unix操作系统)的话则就会修改源ip地址, 因为源ip地址时私有地址, 是不可以在...
符号表 opcode代码中的操作数都是一个符号表中的索引, 在符号表中存储的是字符串, 方法名, 变量名, 变量值, 让虚拟机通过索引在符号表中获取真正的参数 字母表 在我们定义的脚本语言风格中用到的所有不可以再分的符号放到字母表中, 通过字母表中的单个字符组合出各式各样的单词
模块 词法分析器 语法分析器 代码生成器 操作 通过词法分析器将源文件转为Token存储起来 通过语法分析器调用词法分析器获取一个Token, 在调用代码生成器生成目标代码, 所有是并行的
不同 编译型语言: 编译型程序所生成的指令时二进制形式的机器码和操作数, 就是所谓的二进制流, 二进制程序是CPU可以直接识别执行的 解释性语言: 脚本语言的解释器是二进制形式的, 可以被CPU直接识别的, 但是脚本解释器的输入是脚本语言字符串, CPU执行脚本语言解释器, 而脚本语言解释...
分类(脚本语言分类的标准是脚本语言的语法风格) 基于命令的 --> 类似于汇编语言, 一行代码有操作码和参数组成, 所以不支持循环 基于规则 面向过程 面向对象: smalltalk是世界上第一个纯正的面向对象语言
只描述在IA-32e模式下的字符显示 首先要有一个字符库(包含这每一个字符的像素信息, 空白的地方时0x00, 一个字符一个8x16的矩阵) 每一个像素点就是一个int类型4bytes大小的整数, 该整数的每一个字节都有特定的属性用来配置显示出来的字符的样式 要想实现, 需要在定义一个二维数组, ...
功能 定义data段和text段 重新手动初始化gdt表, idt表, tss表结构 初始化页表和页目录 --> 页目录的数据放在一个页表中 在页目录中, 其实地址为0x1000, 初始化页目录, 一个页目录占用的页表的剩余数据值使用0来填充, 一个页表的大小分为(2MB, 4MB, 8MB等...
Intel架构下 凡是在代码中书写的内存地址都是逻辑地址, 也就是采用基地址:偏移量, 我们能够直接看到的也是逻辑地址, 通过左移等操作可以计算出对应的物理地址(在实模式下逻辑地址与物理地址没有中间层所以是可以的, 但是在保护模式则是行不通的, 再说) 实模式下 逻辑地址通过左移等操作可以计算...
在实模式下开启4GB的物理内存地址寻址(称之为Big Real Mode) 通过A20快速门(Fast Gate)修改0x90端口的数据, 对其进行置位(类似于打开一个开关), 开启 使用CLI汇编指令关闭外部中断 使用lgdt加载保护模式需要的系统数据结构 置位cr0寄存器的值开启保护模式 进入...
定义一个ThreadPool 在创建了一个ThreadPool中执行一个函数, 直接开启指定要求数量的线程, 接着又一个借口add_job()方法, 将要执行的函数放到维护的queue中, 而一开始开启的线程就是不断循环从维护的queue获取数据并执行任务即可, 反正queue中存放的就是任务(函...
类的设计 方法优先的原则, 在__init__方法中创建出需要的属性, 对于基类来说, 只进行默认值得初始化, 0, None等, 对于真正需要使用的子类, __init__方法则是进行我们需要的初始化, 不在基类中进行初始化就与Java中的构造方法不能继承是一样的了, 要在子类中初始化所有的属性...
前言: Windows 中直接使用Python真的是心累 安装vs 2017(最好是最新版的, 因为python依赖于一些vs提供的包) 下载最新的python的安装程序 安装完毕之后, 不像Linux或者Unix上会自带pip工具, 在windows上什么都没有, 就是有python.
模块概况 display image event key mouse font 类概况 Rect: 返回的矩阵区域(图片) Surface: 可以看做是一个贴图, 它就是来显示的 display(与显示对象Surface有关) pygame.
使用distutils.core.setup函数发布程序 将要发布的包放到mypub的目录下 在mypub目录下创建一个setup.py文件 setup.py文件的设置 from distutils.
有宏观到微观 思考研究的对象的属性和方法 规定好对象的属性和方法但是并不实现 先写出应用该对象的场景的代码 实现方法, 之后就是面向过程的思维了, 如果方法复杂则添加私有方法
python的单例模式 修改__new__(cls)静态方法 class A(object): __instance = None def __new__(cls): if not cls.
数组: numeric array: 输出不带[], 类型都要为数值类型, 不是则输出NAN string array: 输出不带[], 类型都为string cell array: 输出带[], 列名会被判断为字符串, 类型可以是任何类型, 与我们的矩阵最为接近 table: 类似于我们的ex...
最大回撤率 所谓最大回撤率,指的是在选定周期内任一历史时点往后推,产品净值走到最低点时的收益率回撤幅度的最大值。最大回撤用来描述买入产品后可能出现的最糟糕的情况。最大回撤是一个重要的风险指标,对于对冲基金和数量化策略交易,该指标比波动率还重要 计算公式: (最高 - 最低) / 最高 在某种...
常用函数 randperm --> 类似于python中的shuffle isempty --> 判断向量或者矩阵的是否为空(里面没有任何内容) 参数1: vec 或者 matrix 返回值: 1: 表示为空 0: 表示不为空 exist --> 判断变量是否存在 直接上示例 ...
导入excel 右键excel文件, import data, 选择column vector点击导入即可, 在右侧的workspace就可以看到添加的列变量了 在workspace中右键添加class, min, max, mean, std等列用来数据分析, 但是这样还不是直观的 可视化数据,...
方法论 excel的后缀为.xls, matlab是无法识别的, 需要将其另存为.xlsx文件格式 打开excel, 点击save as, 选中保存的文件格式是.xlsx即可
平台 macOS MATLAB 版本 matlab 2017a 需要设置文件打开编码的情况 从windows平台迁移过来的.m文件的编码格式是GB2312的, 而macOS的MATLAB默认是UTF-8的, 打开显示乱码 解决方案 在/Application中找到MATLAB, 右键显示包内容 进入bin目录 打开lcdata.
boot and loader boot 程序的所有作用 清屏 将光标移到屏幕左上角 显示 Start Boot 提示信息 加载 loader 程序的代码到 0x10000 物理内存地址 将CPU的段地址设置为 0x1000, 偏移量为 0x0000 boot 程序(内置 FAT12 文件系统的...
安装包 bochs 2.6.8 平台 centos6 前提依赖 yum groupinstall -y "Server Platform Development" "Development Tools" kernel-headers, kernel-devel, qt-devel, gtk2-devel, textinfo, tcl-devel, tk-devel 配置选项 .
list方法 append: 添加一个新的元素到末尾 extend: 扩展元素 insert: 在任何位置插入元素 pop: 弹出末尾的元素 remove: remove first occurrence of value sort: 原地排序 reverse count clear dict方...
方法 find(): 找不到会返回-1 index(): 找不到会报错 rfind(): 找不到会返回-1 rindex(): 找不到会报错 ','.join startswith() endswith(): 用于判断文件类型很有用 ljust: 调整位置 rjust: 调整位置 center: ...
目录结构 solution_dir Debug: 存放Debug版本信息的.exe Release: Release的.exe .sln: visual studio 项目文件 project_dir Debug(Debug模式下生成的临时目录, 没有.
平台 macOS 工具 nasm clang 文件 main.asm extern _printf ; 这里调用系统的一个系统调用函数, _printf, 使用extern告诉链接器该label在其他文件中有定义, _printf只接受一个string的地址, 和C语言层面上的printf是一样的 section .
平台 macOS 工具 nasm clang 文件 main.c #include int add(int a, int b); int main() { printf("the reuslt of 2 plus 3 is %d\n", add(2, 3)); return 0; } add.
nasm编译 nasm -f macho64 --prefix _ demo.asm # --prefix是为gobal的标签添加前缀, 链接时根据的都是以_开头的 clang编译 clang test.c demo.o
汇编语言 向屏幕输出文字 向屏幕输出需要向显示缓冲区写数据(在dosbox中在内存的其实位置是0b800h:0000h) 输出的一个字符其实占用的是两个字节(一个字单位), 因为我们不仅要输出一个8位的ASCII, 还要输出该字符的属性, 包括高亮, 颜色, 底色等, 这些有另一个8位决定, 通过...
Launchctl 系统启动时, 系统会以root用户的身份扫描/System/Library/LaunchDaemons和/Library/LaunchDaemons目录, 如果文件中有Disable的值为true, 则不会load进来, 否则就会load进来, 相当于执行了launchctl ...
mac 的httpd mac 自带了apache2, 但是不推荐使用, 因为它的目录在/Library/WebServer/Documents/下 使用brew install apache-httpd安装httpd 使用brew list httpd查看安装了那些文件 配置文件在.
Mac 中定义与Linux一样的profile.d 首先Mac是没有profile.d的 在/etc/profile文件中添加 for sh in /etc/profile.d/*sh; do [ -r $sh ] && .
Homebrew 都干了什么 安装完毕Homebrew之后, 可以说整个/usr/local/下的东西都是Homebrew自动创建出来的, 一个新的Mac系统默认情况下/usr/local是空的, 安装了Homebrew之后就有了bin, sbin, share, Cellar, Homebrew...
操作系统 操作系统运行程序 hello world程序的执行过程 用户通知操作系统执行hello world应用程序 操作系统找到hello world程序的相关信息, 程序的相关信息(ELF文件信息, 不包括.
mongodb installation mongodb-org mongodb-org-shell mongodb-org-tools mongodb-org-server config mongodb.
elk and redis installation and configuration ATTENSION attention the version of all software(use the latest) node1 installed logstash, httpd systemctl start httpd vim /etc/logstash/httpd.
节点 node1: 配置logstash node2: 配置collectd, collectd收集本地的信息, 通过配置将信息发送到node1节点 node1安装配置logstash rpm -ivh logstash.
安装与配置 安装 Server端 rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.
环境 rhel 6 安装与配置 配置epel源 yum install httpd dhcp tftp-server cobbler pykickstart syslinux rsync cman force-agent -y 修改xinetd的配置文件, 将tftpd和rsync开启 修改/...
windows安装后的配置 没有网络适配器, 将USB中的驱动精灵的安装程序安装在win上, 启动精灵, 提示无法连接到网络, 使用Android类型的手机中的QQ浏览器扫码下载 win会有一些开机自启动的服务,如果想要关闭, 在win + r中键入msconfig, 点击启动之后选择 下载KMS...
① 对Windows的设置一般在, 所有设置, 控制面板(control), 管理方式打开此电脑和此电脑上的选项 ② 关闭对账号安全的检验, 在控制面板中, 找到系统和安全, 再找到更改用户账号控制设置 ③ 增加磁盘: 使用管理的方式打开此电脑, 如果原来的磁盘没有将硬盘占满, 可以右键该磁盘对该磁...
windows如何打开dvd, iso镜像文件 .iso后缀的文件是一个压缩文件, 使用Winrar等压缩工具即可打开 windows7如何下载Visual Studio 2010(2010是流行的开发版本, 其中的Ultimate版本(旗舰版)包含了其他版本的2010的所有功能, 所以比较消耗资源...
PXE 安装与配置 实验环境 VMware Fusion 虚拟机 node1有两块网卡, ens33(172.100.16.10)-->bridge, ens37-->vmnet4(192.168.1.
puppet master/agent 配置 安装 master: yum install puppet-server agent: yum install puppet 自动签名 puppet的master端 touch autosign.
puppet配置 命令 facter -p: 显示所有的变量 puppet apply [-v] [--noop] puppet module puppet describe [-l] [list] 常用资源 file user group exec package service noti...
配置好MogileFS, 见mogilefs的安装与配置随笔 下载nginx.1.10.3.tar.gz, nginx_mogilefs_module.1.0.4.tar.gz 编译安装 将连个tar.