自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 写时复制技术

写时复制技术什么是写时复制技术在Linux程序中,fork()会产生一个和父进程完全相同的子进程,但子进程在此后多会exec系统调用,出于效率考虑,linux中引入了“写时复制“技术,也就是只有进程空间的各段的内容要发生变化时,才会将父进程的内容复制一份给子进程。什么是exec系统调用The exec() family of functions replaces the current process image with a new process image.exec是以新

2020-12-03 21:45:38 953

原创 I/O模型、阻塞型I/O、非阻塞型I/O、I/O复用

I/O模型有五种I/O模型:阻塞型I/O:blocking IO非阻塞型I/O:nonblocking IOI/O复用:IO multiplexing信号驱动I/O:signal driven IO异步I/O:asynchronous IO对于一个network IO (以read举例),它会涉及到两个系统对象:一个是调用这个IO的进程,另一个就是系统内核(kernel)。当一个read操作发生时,它会经历两个阶段:阶段1: 等待数据准备 (Waiting for the data to

2020-10-20 10:10:54 427

原创 Mysql索引,为什么用B+树?索引怎么加快查询的?应该如何使用索引?

MySQL 索引为什么需要索引根据上面索引的定义,可以知道索引其实是一种数据结构,主要用于提高表中的查询效率,除此之外,索引还是数据库随机高速读取和对记录进行有效排序的基础。不使用索引情况下数据的读取除了像 Redis 这样的内存型数据库外,大部分的关系型数据库如 MySQL 等的数据都是直接存储在磁盘上的,而对于从磁盘查找数据来说,需要经历寻道, 寻址, 数据传输三个阶段。寻道:驱动器驱动磁头前后移动到对应的磁道,一般为 5 ~ 14 ms寻址:磁盘旋转到指定扇区的过程,寻址时间与磁盘转速有

2020-10-20 10:09:08 939

原创 零拷贝初探

零拷贝什么是零拷贝?零拷贝技术,就是避免将数据从一块存储拷贝到另外一块存储的技术,从而节省拷贝带来的CPU开销,零拷贝并不是将拷贝操作完全消除掉。传统拷贝:这个没什么说的,就是平时我们一般都会用到的拷贝方式;MMAP方式的拷贝:当应用程序不需要对数据进行访问时,则可以避免将数据从内核空间拷贝到用户空间;SendFile方式的拷贝:写时拷贝技术,数据不需要提前拷贝,而是当需要修改的时候再进行部分拷贝。传统拷贝传统的Linux系统中,标准的I/O接口(例如read,write)都是基于数据拷贝

2020-10-20 10:07:43 469

原创 ConcurrentHashMap复习

ConcurrentHashMap我们都知道HashMap在并发下会产生数据不一致问题,所以衍生出了ConcurrentHashMap这样一个在并发环境下也能保证数据一致的Map,但是他的原理是底层代码是怎么写的呢?今天小编就带大家康康(其实是我自己得康康)首先先看JDK1.7中的ConcurrentHashMap的源码是怎样的。1.7首先我们先康康他的结构吧。核心成员变量/** * Segment 数组,存放数据时首先需要定位到具体的 Segment 中。 */final Segmen

2020-10-20 10:06:24 83

原创 Netty架构与工作原理

NettyJava NIO三大组件:Selector,Buffer,Channel每个channel都对应一个BufferSelector对应一个线程Buffer是一个内存块,底部有一个数组Buffer//标记private int mark = -1;//当前位置private int position = 0;//缓冲区的位置private int limit;//缓冲区的容量大小private int capacity; Selector常用方法//Open

2020-10-20 10:05:13 170

原创 计算机网络面试复习

首先看看模型(从下到上)物理层在物理层上所传送的数据单位是比特。 物理层(physical layer)的作用是实现相邻计算机节点之间比特流的透明传送,尽可能屏蔽掉具体传输介质和物理设备的差异。 使其上面的数据链路层不必考虑网络的具体传输介质是什么。“透明传送比特流”表示经实际电路传送后的比特流没有发生变化,对传送的比特流来说,这个电路好像是看不见的。数据链路层协议:PPP、CSMA/CD主要解决的问题:透明传输、封装成帧、差错检测,局域网属于数据链路层的范畴封装成帧封装成帧就是在数据段的

2020-10-20 10:00:35 544 1

原创 Dubbo整合SpringBoot使用,入门

文章目录Dubbo初探几个问题Dubbo组成部分注册中心服务提供者服务消费者结果结语Dubbo初探几个问题什么是RPC?为什么我要用RPC?什么是Dubbo?RPC:(Remote Procedure Call) 该协议允许运行于一台计算机的程序调用另一个地址空间(通常为一个开放网络的一台计算机)的子程序,而程序员就像调用本地程序一样,无需额外地为这个交互作用编程(无需关注细节)。RPC是一种服务器-客户端(Client/Server)模式,经典实现是一个通过发送请求-接受回应进行信息交互的系统。

2020-09-18 19:25:38 1137

原创 C语言入门第一课,VS2010的安装以及使用

首先解释一下什么是VS2010,它的全程为Visual Studio 2010是一款编译器,就是能把你写的代码转换成成可以运行的文件的一个东西。首先我们需要准备一个迅雷之类的下载软件。然后复制这个链接ed2k://|file|cn_visual_studio_agents_2010_x86_x64_dvd_532524.iso|568227840|8553ED11AFBCAA06F66...

2019-09-21 23:02:37 2066 2

原创 OpenCV尝试心得

opencv使用心得前言opencv是一款计算机视觉库,初次接触计算机视觉感觉计算机视觉有点东西 -.-,很多的图像处理之间的关系需要我们对图像的知识。图像以前没接触过图像,自己认为的图像就是屏幕上RGB的像素点,每个像素点,是图像的一开始的状态,但是通过这次培训明白了图像是RGB三层像素之间的叠加,取样频率和量化之间的概念,在我理解看来也就是RGB的不同颜色之间像素深度的一个叠加,其实屏...

2019-01-22 11:13:18 1841

原创 文件上传漏洞靶场练习

最近发现了一个文件上传的靶场:https://github.com/c0ny1/upload-labs github上面的项目。大家可以把这个仓库克隆到phpstudy下的www目录下进行练手php版本:推荐5.2.17(其他版本可能会导致部分Pass无法突破)php组件:php_gd2,php_exif(部分Pass需要开启这两个组件)apache:以moudel方式连接此...

2018-11-17 20:03:06 6814

原创 git一些常用命令以及Github入门

最近也没搞什么渗透相关的东西,说来很是惭愧。就跟大家分享一下在学习git的时候记得一些笔记:(搬运自https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000)始化一个Git仓库,使用git init命令。添加文件到Git仓库,分两步:第一步,使用命令git add <f...

2018-11-02 21:52:37 275

原创 deepin添加kali源的一些问题

2018.10.26鼓捣deepin的时候想下载kali的一些工具,所以得更新一下kali的源。首先找到etc/apt/sources.list这个文件。然后添加:#中科大deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contribdeb-src http://mirrors.ustc.edu...

2018-10-26 19:35:16 3607 9

原创 数据结构顺序表顺序栈记录

#include<stdio.h>#include<stdlib.h>#define maxsize 100typedef struct{ //顺序表 int a[maxsize]; int size;}sequence_list; //编译环境vs2010,functi...

2018-09-16 21:04:58 442

原创 dvwa下xss练手实践

xss简介:跨站脚本(英语:Cross-site scripting,通常简称为:XSS)是一种网站应用程序的安全漏洞攻击,是代码注入的一种。它允许恶意用户将代码注入到网页上,其他用户在观看网页时就会受到影响。XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。从而使目标计算机收到危害。分类:xss漏洞分为三...

2018-09-07 20:56:25 12660 2

原创 python爬取unsplash壁纸

前几天想写一个爬虫,无意间发现这个https://unsplash.com/这个壁纸网站感觉还不错,就试着爬一下,虽然并没有什么意义,因为壁纸有一张就好了,没必要爬好多。分析页面:页面中有search这个窗口,搜索一次发现url的格式,这样就可以构造任何想下载类型的壁纸了。审查元素发现每张照片都有自己独特的id而且下载链接格式为https://unsplash.com/photos/'+id+'/...

2018-05-19 11:11:57 1821 2

原创 python requests库与正则表达式的一次实战

在实验吧看到一道编程题  http://ctf5.shiyanbar.com/jia/在三秒钟的时间内,计算出这个大数,而且三秒必须完成获取和提交数据的任务。刚开始写了一个程序:每次把这个字符复制过来,然后再把结果粘回去。后来我发现,手速这个东西,我可能没有。然后想了想能不能使用python的requests库结合正则表达式来做呢?答案是肯定的。由于之前没有接触过requests库,就先看看官方文...

2018-05-10 19:37:52 1750

原创 南邮 ctf web(部分题)

1:签到题 http://chinalover.sinaapp.com/web1/打开源代码:原来key在这里。 (lll¬ω¬)!!2:md5 collision http://chinalover.sinaapp.com/web19/看到源码是关于md5加密的:“QNKCDZO”那么,先看看他加密后变成什么样子。顺便推荐一个加密解密很方便的网站:http://web2hack...

2018-05-04 15:16:51 8338 2

原创 python,pyinstaller库的使用

在一开始接触编程的时候一直有一个问题,怎么让写出来的代码独立出来,成为一个可执行文件。这样就可以双击就可以用,多方便。直到学习到python的pyinstall库的使用,才知道python有一个转换的函数库。源文件打包pyinstaller库能干什么?pyinstaller库能在windows,linux,Mac osx等操作系统下将python的源文件打包,这样就可以在没有安装python的环境...

2018-04-28 20:43:48 2916 1

原创 杂记

做了一道编程题:找素数设一个等差数列,首元素为367,公差为186, 现在要求找出属于该等差数列中的第151个素数并输出。格式:CTF{xxx}源码如下(python 3):import mathdef panduan(a): for x in range(2, int(math.sqrt(a) + 1)): if a % x == 0: retu...

2018-04-20 22:20:47 976 1

原创 python3制作游戏的一次尝试。

最近在学习python 与大家分享一点python制作小游戏的经历。同时也希望大家能指出程序设计工程中的不足。当然只是学习,源码是基于《python编程从入门到实践》这本书上的。由于时间有限,暂时与大家分享半成品。游戏的成品类似于坦克大战,通过←→来控制飞船的移动,空格键控制射击,上面是外星人,游戏速度逐渐加快,如果外星人到达低端game over。成品如果做出来会在下一篇博客发。半成品是这样。本...

2018-04-13 22:07:18 3554 2

原创 web——ctf (登陆一下好吗??)

登陆一下好吗??  不要怀疑,我已经过滤了一切,还再逼你注入,哈哈哈哈哈!flag格式:ctf{xxxx} 解题链接: http://ctf5.shiyanbar.com/web/wonderkun/web/index.html                     ...

2018-04-08 15:22:08 5673

原创 CTF

貌似有点难解题链接: http://ctf5.shiyanbar.com/phpaudit/ 看到这个...

2018-03-31 13:30:28 563

原创 kali linux安装和vm tool安装 更新源 开启ssh

众所周知kali linux 是黑客常用的一个操作系统kali 集成了渗透的好多工具比如burp抓包软件等等。。在虚拟机中安装kali 是进行网络渗透的第一步。本文会与大家分享:kali linux安装;vmtools安装;更新源;开启ssh;一:kali linux安装;首先我们需要下载kali linux的镜像文件和VMware Workstation1:下载l...

2018-03-23 10:22:45 3183

空空如也

空空如也

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

TA关注的人

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