自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Abraham_1的博客

只要开始,就不算晚。

  • 博客(18)
  • 资源 (3)
  • 收藏
  • 关注

原创 Linux C编程(十二) 之sourceinsight4使用总结

前言随着学习的不断深入,代码量以及代码文件个数也越来越多,此时代码的有效编辑就成了一个棘手的问题,在此向大家推荐一款功能强大的代码阅读和编辑工具-----sourceinsight4。下面来讲讲如何使用这款神器。1. 软件的安装(不再赘述,可自行百度或查阅其他资料)2. 先创建一个工程project—》new project 选择路径 工程名称 创建 并加入源文件,完成后如下, 以...

2019-05-11 17:53:49 742

原创 Linux C编程(十一) 之 I/O复用-----epoll机制

基础知识I/O多路复用有很多种实现。在linux上,2.4内核前主要是select和poll,自Linux 2.6内核正式引入epoll以来,因为其可以轻松的处理上万个连接,性能卓越,已经成为了目前实现高性能网络服务器的必备技术。函数解释1. epoll_create int epoll_create(int size);创建一个epoll的句柄,size用来告诉内核这个监听的数目一共...

2019-05-11 17:11:20 347

转载 Linux C编程(十) 之 I/O复用-----poll机制

poll和select对比不同:select使用三个位图来表示三个fdset的方式,poll使用一个 pollfd的指针实现。pollfd结构包含了要监视的event和发生的event,不再使用select“参数-值”传递的方式。pollfd并没有最大数量限制(但是数量过大后性能也是会下降)。相同:和select函数一样,poll返回后,需要轮询pollfd来获取就绪的描述符。从上...

2019-05-11 11:54:27 288

原创 Linux C编程(九) 之 I/O复用-----select机制

基础概念IO多路复用是指内核一旦发现进程指定的一个或者多个IO条件准备读取,它就通知该进程。IO多路复用适用如下场合:当客户处理多个描述字时(一般是交互式输入和网络套接口),必须使用I/O复用。当一个客户同时处理多个套接口时,而这种情况是可能的,但很少出现。如果一个TCP服务器既要处理监听套接口,又要处理已连接套接口,一般也要用到I/O复用。如果一个服务器即要处理TCP,...

2019-05-11 10:21:50 220

原创 Linux C编程(八) 之 网络编程(下)

这里运用前两篇的内容做出以下实例代码server:#include<stdio.h>#include<sys/socket.h>#include<netinet/in.h>#include<string.h>#include<unistd.h>#include <arpa/inet.h>#include<...

2019-05-10 18:06:56 153

原创 Linux C编程(七) 之 网络编程 (中)

Linux下网络编程相关APIsocket()函数 int socket(int protofamily, int type, int protocol);//返回sockfd sockfd是描述符。socket函数对应于普通文件的打开操作。普通文件的打开操作返回一个文件描述字,而socket()用于创建一个socket描述符(socket descriptor),它唯一标识一...

2019-05-10 16:07:52 203

原创 Linux C编程(六) 之 网络编程 (上)

网络协议栈网络基础在Linux网络编程中,网络协议主要分为五层应用层传输层网络层链路层物理层TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间协议,是一个工业标准的协议集,它是为广域网(WANs)设计的。TCP/IP协议存在于OS中,网络服务通过OS提供,在OS中增加支持TCP/IP的系统调...

2019-05-09 21:55:31 208

原创 Linux C编程(五) 之 gdb详解

GDB调试gdb是gnu项目组开发的一款Unix下功能强大的调试器 主要用来调试C/C++程序基于命令行的调试方法 可以随心所欲的运行程序所有的调试都是可以进行脚本编写的能够调试所有架构的代码有三种调试方法供大家选择 可安装插件gdb 可以下多种类型的断点GDB支持远程调试,支持与IDA进行联调可动态改变程序的运行环境gdb调试前提若想使用gdb进行程序调试,...

2019-05-08 21:35:15 477

原创 Linux C编程(四) 之 静态库和动态库

概述linux下有两种库:动态库和静态库 二者的不同点在于代码被载入的时刻不同。静态库的代码在编译过程中已经被载入可执行程序,因此体积比较大。动态库(共享库)的代码在可执行程序运行时才载入内存,在编译过程中仅简单的引用,因此代码体积比较小。不同的应用程序如果调用相同的库,那么在内存中只需要有一份该动态库(共享库)的实例。静态库和动态库的最大区别,静态情况下,把库直接加载到程序中,而动态...

2019-05-07 20:34:44 301

转载 Linux C编程(三) 之 makefile详解

转自陈皓:https://blog.csdn.net/haoel/article/details/2886什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTM...

2019-05-07 19:04:27 1055

原创 Linux C编程(一) 之 系统基本操作

linux虚拟机安装可参考:https://blog.csdn.net/u013142781/article/details/50529030linux 基础快捷键和工具说明Ctrl+alt+t 图形界面中呼出控制终端alt+shift+ = 放大终端ctrl + - 缩小终端ctrl + alt +F1~F6 切换至无图形界...

2019-05-07 08:48:41 393

原创 使用frp实现内网穿透

要实现内网映射,首先需要准备以下工具: vps kali(一台linux机器) frp xshell步骤一进入vps修改frps.ini文件如下 [common]bind_port = 7000#供客户端连接的端口dashboard_port = 777...

2019-05-06 21:31:29 622

原创 Linux下AIO服务设计框架

一. 对于异步I/O的概述aio异步读写是在Linux内核2.6之后才正式纳入其标准。之所以会增加此模块,是因为众所周知我们计算机CPU的执行速度远大于I/O读写的执行速度,如果我们用传统的阻塞式或非阻塞式来操作I/O的话,那么我们在同一个程序中(不用多线程或多进程)就不能同时操作俩个以上的文件I/O,每次只能对一个文件进行I/O操作,很明显这样效率很低下(因为CPU速度远大于I/O操作的速度,所...

2018-04-08 18:41:07 4402 5

原创 nmap使用详解

nmap简介:nmap Network Mapper(网络映射器)是一个开源并且为了Linux系统管理员或者网络管理员的万能的工具。Nmap用于浏览网络,执行安全扫描,网络审计以及在远程机器找到开放端口。它可以扫描在线主机,操作系统,滤包器和远程主机打开的端口。nmap安装方式:   yum install nmap                   [基于Red Hat系统]   $ sudo...

2018-04-03 22:41:16 1108

原创 kali-2017安装更新源和vmtools安装

一些更新源:#autodeb http://http.kali.org/kali kali-rolling main non-free contrib#中科大deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contribdeb-src http://mirrors.ustc.edu.cn/kali kali-rollin...

2018-04-01 21:45:30 929

原创 处理机调度之FCFS

本程序旨在使大家对先来先服务的处理机调度机制有更加深入的了解,步骤如下:1.创建PCB结构体代表对相应进程的唯一标识,内含以下数据:进程名 要求运行时间 状态 指针 2.创建相应队列和链表deque&lt;PCB_STRU*&gt;Ready_Queue; //就绪队列deque&lt;PCB_STRU*&gt;Block_Queue; //阻塞队列PCB_STRU* Ready_list =...

2018-03-30 13:09:38 641

原创 生产者消费者问题VC语言实现

源代码如下://宏定义#define BUFFER 20 //缓冲区大小//头文件#include&lt;windows.h&gt;#include&lt;stdio.h&gt;#include&lt;iostream&gt;#include&lt;stdlib.h&gt;unsigned short ProductID = 0; //产品号unsigned ...

2018-03-23 12:50:42 1604

原创 操作系统中进程同步问题的几个经典问题与解答

1、用记录型信号量解决以下问题,用类C语言编写进程同步算法。司机   P1       售票员  P2       REPEAT          REPEAT       启动             关门       正常运行         售票       到站停           开门       UNTIL FALSE     UNTIL FALSE semaphore s1,s2;...

2018-03-21 14:44:21 15981 3

kali_linux最新版镜像

virtualBox虚拟机安装包和kali_linux2017.3的镜像, 可打开链接直接下载安装

2018-04-02

生产者消费者问题vc代码

windows系统下vc编译器实现进程同步问题,通过windows系统提供的API实现线程创建和信号量互斥访问。亲测可行。

2018-03-23

java-jdk和eclipse编译环境 安装包的网盘链接 可直接下载安装

一个txt文档 下载后根据文档内的链接和密码 可直接下载安装包资源 进行安装 先安装jdk 再安装eclipse 亲测可实现java代码的编译运行

2018-03-15

空空如也

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

TA关注的人

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