自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

King8611的博客

没有什么可以描述的啦,因为我很菜啊

  • 博客(91)
  • 资源 (1)
  • 收藏
  • 关注

原创 ucore lab2练习1

实现 first-fit 连续物理内存分配算法在实现first fit 内存分配算法的回收函数时,要考虑地址连续的空闲块之间的合并操作。提示:在建立空闲页块链表时,需要按照空闲页块起始地址来排序,形成一个有序的链表。可能会修改default_pmm.c中的default_init,default_init_memmap,default_alloc_pages, default_free_pages等相关函数。请仔细查看和理解default_pmm.c中的注释。完成这个练习之前,应该首先学习一下uco

2020-09-10 18:00:16 357 1

原创 ucore lab1练习6

完善中断初始化和处理问题1:中断描述符表(也可简称为保护模式下的中断向量表)中一个表项占多少字节?其中哪几位代表中断处理代码的入口?中断描述符表有8个字节,有以下定义://kern/mm/mmu.h/* Gate descriptors for interrupts and traps */struct gatedesc { unsigned gd_off_15_0 : 16; // low 16 bits of offset in segment unsign

2020-09-08 09:09:46 396

原创 ucore lab1练习5

实现函数调用堆栈跟踪函数coding:完成kdebug.c中函数print_stackframe的实现void print_stackframe(void) { /* LAB1 YOUR CODE : STEP 1 */ /* (1) call read_ebp() to get the value of ebp. the type is (uint32_t); * (2) call read_eip() to get the value of eip. the t

2020-09-05 16:10:44 268

原创 ucore lab1练习4

通过阅读bootmain.c,了解bootloader如何加载ELF文件。通过分析源代码和通过qemu来运行并调试bootloader&OS,问题1:bootloader如何读取硬盘扇区的?参考手册上说明这里用的是PIO方式读取磁盘的,但是网上查阅资料说这种方式CPU利用率比较低,现在都用的DMA方式。这里我们跟着源码一步一步来:第一步在main函数的第89行: readseg((uintptr_t)ELFHDR, SECTSIZE * 8, 0);这里调用了一个函数,我

2020-09-04 16:48:50 207

原创 ucore lab1练习3

分析bootloader进入保护模式的过程BIOS将通过读取硬盘主引导扇区到内存,并转跳到对应内存中的位置执行bootloader。请分析bootloader是如何完成从实模式进入保护模式的。提示:需要阅读小节“保护模式和分段机制”和lab1/boot/bootasm.S源码,了解如何从实模式切换到保护模式。问题1:为何开启A20,以及如何开启A20先回答第一个问题,为了兼容早起的版本,x86在开机的时候是实模式状态,寻址空间是1m。寄存器只有16位,为了模拟1m的寻址空间,用cs和ip来寻址

2020-09-04 10:13:48 195

原创 ucore实验报告

已经大四秋招在即,手里还没有offer,还有一些其他原因压力甚大。按道理来说这个时间应该好好秋招多投几个岗位多面试学习的,可是因为一些原因还是想静下心写个东西吧。这个lab我好早之前都想写了,奈何中间真的是有一些事。最近立了个flag,三个月内完成最少5个lab,加油!github地址:https://github.com/King8611/ucore_lablab1:练习1:https://blog.csdn.net/King8611/article/details/108325376

2020-09-02 10:47:55 262

原创 ucore lab1练习2

从CPU加电后执行的第一条指令开始,单步跟踪BIOS的执行。修改tools/gdbinit的内容如下:set architecture i8086target remote :1234然后make clean一下,执行make debug。(这段makefile代码没看,根据百度学的)。顺利运行后,会出现这个,这时候执行指令位于0x0000fff0处(BIOS第一条指令):onof GDB. Attempting to continue with the default i8086 s.

2020-09-02 10:42:17 297

原创 ucore lab1练习1

练习1:理解通过make生成执行文件的过程。(要求在报告中写出对下述问题的回答)问题1:操作系统镜像文件ucore.img是如何一步一步生成的?(需要比较详细地解释Makefile中每一条相关命令和命令参数的含义,以及说明命令导致的结果)执行make v=后的结果(做了过滤处理)#编译kern+ cc kern/init/init.c+ cc kern/libs/stdio.c+ cc kern/libs/readline.c+ cc kern/debug/panic.c+ cc ker

2020-08-31 17:13:50 329

原创 makefile学习笔记

makefile学习笔记基本规则targets : prerequisites commandtargets:规则的目标,可以是 Object File(一般称它为中间文件),也可以是可执行文件,还可以是一个标签;prerequisites:是我们的依赖文件,要生成 targets 需要的文件或者是目标。可以是多个,也可以是没有;command:make 需要执行的命令(任意的 shell 命令)。可以有多条命令,每一条命令占一行。test:test.c gcc -o test

2020-08-30 10:53:27 126

原创 Mysql架构与历史

Mysql架构与历史MySQL逻辑架构客户端----->线程/进程处理---->(查询缓存<—解析器)->优化器最上层不是MySql独有的,大多数基于网络的客户端/服务器的工具或者服务都有类似的架构。大多数Mysql的核心服务功能都在第二层,包括查询解析、分析、优化、缓存以及所有内置函数。第三层包括存储引擎,负责MySQL中数据的存储和提取。连接管理与安全性每个客户端连接都会在服务器进程中拥有一个进程,这个连接的查询只会在这个单独的线程中执行。服务器会缓存线程,因此不需

2020-08-29 20:18:29 149

原创 一个进程的诅咒

我犯了不可饶恕的错误,等待我的是神对我的裁决。那意味这我将再也不可能像之前一样在这个世界存在下去了。我真的好后悔,因为我太爱这个世界了,这个世界有许许多多和我一样的兄弟姐妹。我们共同在这个世界上出生,生存,死亡~我们共同享受这这个世界,就和你们人类世界一样。也许你会好奇我做了什么以至于会面临这样的处罚,也许你会觉得我罪有应得才会落到这个下场。但其实事情都没有你想象的那么简单,如果你有兴趣了解我的故事请听我慢慢道来~不知道是什么时候,我来到了这个世界,见到了许许多多和我相似的同伴。我问他.

2020-05-21 14:42:46 1037 2

原创 TCP连接管理

TCP连接的建立与终止一个TCP连接由一个四元组构成,分别是两个IP和两个端口号。一个TCP连接分为三个阶段:启动、数据传输、关闭。主动开启(三次握手):客户机–>服务器(SYN=1,Seq=c)服务器–>客户机(SYN=1,ACK=c+1,Seq=d)客户机–>服务器(ACK=d+1,Seq=c+1)关闭(四次握手)客户机–>服务器(FIN=1,Seq=K,ACK=L)服务器–>客户机(ACK=K+1,Seq=L)服务器–>客户机(FIN=1

2020-05-12 20:58:37 937

原创 MYSQL查询语句总结

SELECT语句检查单个列SELECT prod_name FROM products;检查多个列SELECT prod_id,prod_name,prod_priceFROM products;检查所有列SELECT * FROM products;检查不同的行SELECT DISTINCT vend_id From products;限制结果SELECT prod_name FROM products LIMIT 5; #显示五行结果排序检索数据排序数据SE

2020-05-11 17:35:47 283

原创 DNS:因特网的目录服务

DNS:因特网的目录服务DNS提供的服务DNS是:1.一个由分层的DNS服务器实现的分布式数据库;2. 一个使主机能够查询分布式数据库的应用协议。DNS协议运行在UDP上,使用53号端口。与http,FTP,SMTP协议一样,DNS协议是应用层协议,其原因在于:1. 使用客户-服务器模式运行在通信的端系统之间;2. 在通信的端系统之间通过下面的端到段运输协议来传送DNS报文。考虑当某个...

2020-03-29 15:25:48 364

原创 const int *p;int *const p;int const *p;const int *const a;

const int *p;和int const *p;二者是一样的,其中const 修饰的是int,表示指针所指的对象不可以通过该指针被改变(但是不代表这个对象不可以通过其他途径改变),但是指针本身可以被改变。eg:#include<bits/stdc++.h>usingnamespacestd;inta=1;intb=2;intconst*x=&am...

2020-01-30 18:12:17 281

原创 操作系统笔记第六章【输入输出系统】

输入输出系统I/O系统是OS的重要组成部分,用于管理诸如打印机和扫描仪的等I/O设配,以及用于存储数据。I/O系统的基本功能、模型和接口I/O系统的功能:第一、二方面为了方便用户使用I/O;第三、四方面用于提高CPU与I/O设备的利用率;第五、六方面为用户在共享设备时提供方便,以保证系统能有条不紊的运行,甚至能自动修复错误。I/O系统的基本功能隐藏物理设备的细节与设配的无关性...

2019-12-24 15:58:22 874

原创 操作系统笔记第五章【虚拟存储器】

虚拟存储器虚拟存储器作为现代操作系统中存储器管理的一项重要技术,实现了对内存的扩充功能。该功能并非物理上实际扩大内存的容量,而是从逻辑上实现对内存容量的扩充,让用户感觉到内存容量比实际容量大得多。虚拟存储器概述将作业一次性装入内存会出现两种情况:1. 有的作业很大,作业不能全部被装入内存。2. 由大量作业要求运行,但是内存不足以容纳所有作业。常规存储管理方式的特征和局部性原理常...

2019-12-21 14:37:50 1971

原创 操作系统笔记第四章【存储器管理】

存储器管理存储器历来都是计算机系统的重要部分。存储器的层次结构多层结构的存储系统存储器的多层结构对于计算机而言,存储层次至少分为三层:CPU寄存器、主存、辅存。还可以根据具体功能细分为:寄存器、高速缓存、主存储器、磁盘缓存、固定硬盘、可移动存储介质。寄存器、高速缓存、主存储器、磁盘缓存均属于操作系统存储管理的管辖范围,断电后信息不再存在。低级的固定磁盘和可移动存储介质则属于设备管...

2019-12-19 20:55:41 486

原创 操作系统笔记第三章【处理机调度与死锁】

处理机调度与死锁处理机调度的层次和调度算法的目的调度的实质是一种资源分配。三种调度中进程调度(低级调度)的运用频率最高。处理器调度的层次高级调度又称长程调度或作业调度,调度对象是作业。根据某种算法,决定将外存上处于后备队列的哪几个作业调入内存,为它们创建、分配必要的资源,并将它们放入就绪队列。高级调度主要用于多道批处理系统中,分时和实时系统不设置高级调度。低级调度又...

2019-12-16 16:54:07 777

原创 操作系统笔记第二章【进程的描述与控制】

进程的描述与控制在传统的操作系统中,为了提高资源的利用率和系统吞吐量,通常采用多道程序技术,将多个程序同时装入内存,并使之并发运行,传统意义上的程序不再能独立运行。此时作为资源分配和独立运行的基本单位都是进程。操作系统所具有的的四大特征也都是基于进程而形成的,并从进程的角度对操作系统进行研究。在操作系统中,进程是一个极其重要的概念。前趋图和程序执行前趋图(DAG)所谓前趋图是指一个有...

2019-12-13 15:37:15 539

原创 操作系统笔记第一章【操作系统引述】

操作系统引述操作系统的目标和作用操作系统的目标方便性有效性可扩充性开放性方便性:未配置OS的操作系统使用困难,需要懂机器语言才能使用。有效性:1.提高资源利用率;2.提高系统吞吐量。OS可对两种情况都有所提高。可扩充性:从早期的无结构发展成模板化的结构,进而发展为层次化结构。近年来OS广泛采用微内核结构,能方便添加新的功能和模块。开放性:指系...

2019-12-12 15:34:11 495

转载 集线器、交换机、路由器的区别

  区分集线器、交换机、路由器(比喻法)  某一天,你到你女友小芳(暂定这个名字吧)就读的学校去找她,那么你的做法是什么呢:  一、集线器的工作方式:  你站到学校中庭,大喊一声“小芳,我来你找你了!” (广播)  如果这个时候正好有别人也在大喊大叫,你就必须等他喊完了再喊。 (排队)  如果你喊的时候不巧碰上另一个人跟你同时喊,那么你和他喊的内容都不能被听见。 (冲突) ...

2018-12-26 11:01:34 396 1

原创 一个很简短的快排。

刚才心血来潮用指针交换法写了个快(man)排,核心代码如下:public static void sort(int arr[],int l,int r){ if(l==r-1)return; int index=index(arr,l,r); sort(arr,l,index); sort(arr,index+1,r);}static int index(int arr[],in...

2018-12-22 12:13:27 703 5

原创 JAVA读入挂

盗的 static class InputReader { public BufferedReader reader; public StringTokenizer tokenizer; public InputReader(InputStream stream) { reader = new BufferedReader(new Inp...

2018-11-18 20:48:56 445

原创 二分图匹配板子

匈牙利算法,A了一道板子题:http://acm.hdu.edu.cn/showproblem.php?pid=2063推荐学习视频:https://www.bilibili.com/video/av16362938?t=767import java.util.*;import java.io.*;public class Main { static int maxn=600; ...

2018-11-15 10:56:20 263

原创 The Monocycle UVA - 10047

题目链接:https://vjudge.net/problem/UVA-10047其实蓝书上写的挺好的,用四个状态,xy坐标,朝向,颜色作为一个节点。然后就easy了JAVA代码import java.util.*;import java.io.*;import java.math.*;public class Main { final static int inf=1&...

2018-11-11 13:39:16 229

原创 POJ2516 Minimum Cost(网络流,最小费用最大流)

题目链接:http://poj.org/problem?id=2516这道题有点呕。题目大概意思:现在有n个店主,m个供应商,k个商品。现在给你n*k的矩阵,表示每个店主对于每个商品的需求量。然后给你m*k的矩阵,表示每个供应商每个物品的拥有量。然后给你k个n*m的矩阵,表示每个商品在每个供应商和商人之间的消费。最后求能否满足所有店主都能得到满足,如果可以输出最小费用,...

2018-11-05 09:24:05 240

原创 菜瓜大二下学期的数据结构作业

这个学期的数据结构作业写完啦,菜瓜想给大家分享一下。//太简单的就算了,懒得写了。还有选做题。实验3,多项式合并:https://blog.csdn.net/King8611/article/details/83718099实验5,队列解决素数环:https://blog.csdn.net/King8611/article/details/82932270实验6,二叉树的基本操作:...

2018-11-04 18:13:17 509 6

原创 数据结构作业:多项式合并

数据结构作业:多项式合并,链表实现。感觉这个写的还是挺合格的,哈哈。import java.util.*;public class PolySinglyListTest { public static void main(String[] args) { PolySinglyList Ax=new PolySinglyList("1+x-x^2-x^3+x^5+x^10")...

2018-11-04 18:02:21 2399

原创 数据结构作业:二叉排序树及其相关操作

写了一个简单的。因为自己对泛型了解的还是不够到位,所以只能写个demo版的。这课树没办法维持平衡,希望以后学一下红黑树,替罪羊树etc. /* * 简单的二叉查找树 * 没有自带旋转平衡 * 写完这个我学一下 * avl树还有红黑树 */public class SearchTree { private Node head; public void insert(i...

2018-11-04 17:53:04 395

原创 Race to 1 UVA - 11762

概率DP比较精妙。import java.util.*;import java.io.*;public class Main { static boolean isPrimer[]; static int l=0; static int len=1000010; static int primer[]; static StreamTokenizer in=new Strea...

2018-10-25 10:14:17 187

原创 扩展卢卡斯 (板子)

求c(m,n)%a不知道原理,不过套板子就对了: #include&lt;bits/stdc++.h&gt;using namespace std;typedef long long ll;ll exgcd(ll a,ll b,ll &amp;x,ll &amp;y){ if(!b){x=1;y=0;return a;} ll res=exgcd(b,a%...

2018-10-25 08:16:17 256

原创 最小费用最大流板子(JAVA)

板子题: 洛谷P3381 【模板】最小费用最大流https://www.luogu.org/problemnew/show/P3381import java.util.*;import java.io.*;public class Main { static int v,m,s,t,f; //点的个数,边的个数,源点,汇点,流量。 ...

2018-10-22 09:17:00 774

原创 最大流DINIC算法JAVA板子

推荐一条博客:https://www.cnblogs.com/SYCstudio/p/7260613.html讲解得比较细致。然后自己理解了一下写了个JAVA得板子,和哪个差不多,去把HDU一道板子题A了:http://acm.hdu.edu.cn/showproblem.php?pid=3549之前写过一个EK算法,不过据说不常用:https://blog.csdn.ne...

2018-10-19 10:16:34 564

原创 leetcode 4 Median of Two Sorted Arrays

这道题挺有趣的。我百度了一个思路就是,写一个find函数,可以寻找第k大的数,复杂度是log(k).思路就是,要寻找第k大的数,每次在两个数组的其中一个中杀掉k/2个数就行了。 public double findMedianSortedArrays(int[] nums1, int[] nums2) { int n=nums1.length; int m=...

2018-10-15 09:41:10 169 1

原创 今日分数据结构作业:冒泡排序、堆排、希尔排序、快排……

先看实验报告: 好吧,这次实验报告没有什么好吐槽的,安安分分的写了好久。bug无数,虽然之前写过,但是没这么详细。代码+注释:import java.io.*;import java.util.Arrays;public class Main3 {    /*直接排序,希尔排序,冒泡排序,快速排序,直接选择排序,堆排序,归并排序算法     * 直接排序和直接选择排序...

2018-10-06 23:37:06 421 3

原创 今日分数据结构作业:图的简单操作

先上实验报告:还是比较简单的。但是开始没有了解过图的遍历,也不知道怎么遍历。其实也很简单,安利个视频:https://www.bilibili.com/video/av18586085?from=search&amp;seid=6600959381110331126讲的比较详细。最小生成树吧,身为一个ACMer,这么简单裸的板子当然好写了。我用的prim写的,不过没有堆...

2018-10-06 00:26:55 264

原创 今日分数据结构作业:二叉树简单操作

又是一次非常有趣(sangxinbingkuang)的作业。这么简单的作业居然写了一下午,我也是醉了。看来下次要调整好状态再写作业了QAQ。先看实验要求:后三道题懒得写了,就不发要求了/滑稽。代码(附带详细注释):import java.util.*;public class Main { /* * 这次作业有点多,居然写了一下午 * 中间收了条信息,突然...

2018-10-04 17:47:38 225

原创 队列求解素数环

这是我们数据结构的作业,先看要求吧:编程实现队列类,要求包括基本变量和基本操作,也没啥。队列中两个变量,头节点和尾节点。每个节点不仅要有next节点值,还要有last节点。然后insert函数和pop函数,一个插入一个删除。不过这个要分几种情况,当队列为空,或者只有一个元素。队列实现:class Link<T>{ Node<T> head; ...

2018-10-03 16:24:54 897

原创 P2704 [NOI2001]炮兵阵地

题目链接:https://www.luogu.org/problemnew/show/P2704状压DPdp[i][j][k]在第i层,第j个状态下,上面那层为k的最大值代码:import java.util.*;import java.io.*;public class Main { static int state[],stateLen; //表示所有可能状态,长...

2018-09-20 11:28:56 275

JAVA大作业-飞机大战

我自己写过的JAVA大作业,不过写的很菜,很垃圾~~ 可能也有很多BUG,但是就这样吧~~~ 劝大家不要下载,真的很垃圾 不喜勿喷

2018-07-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除