自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 16.Linux网络编程

一、TCP/IP理论基础(1)协议栈Linux的优点之一就是在于它丰富而稳定的网络协议栈,其范围是从协议无关层(如通用的socket层接口和设备层)到各种网络协议的实现(2)协议介绍对于网络理论介绍一般采用OSI模型,但是Linux中网络栈的介绍一般分为四层的Internet模型(3)网络模型(4)TCP/IP协议TCP/IP 实际上一个协同工作的通信家

2017-12-10 16:07:39 351

原创 15.Linux多线程编程

一、线程理论基础(1)定义:线程技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者.传统的Unix也支持线程的概念,但是在一个进程中只允许有一个线程,这样多线程就意味着多进程.现在,多线程技术已经被许多操作系统所支持,包括Windows/NT、Linux(2)进程与线程的区别:1.进程是一个具有一定独立功能的程序的一次运行活动

2017-12-10 15:38:18 233

原创 14.进程间通信

一、进程间通信概述(1)目的1.数据传输    一个进程需要将它的数据发送给另一个进程2.资源共享    多个进程之间共享同样的资源3.通知事件    一个进程需要向另一个或一组进程发送消息,通知它们发生了某种事件4.进程控制    有些进程希望完全控制另一个进程的执行(如Debug进程),此时控制进程希望能够拦截另一个进程的所有操作,并能够及时知道它的状态改变(2)Lin

2017-12-08 20:17:51 255

原创 13.Linux进程控制编程

一、进程控制理论基础1.定义:进程是一个具有一定独立功能的程序的一次运行活动,同时也是资源分配的最小单元2.程序是放到磁盘的可执行文件 进程是指程序执行的实例进程是动态的,程序是静态的:程序是有序代码的集合;进程是程序的执行。通常进程不可在计算机之间迁移;而程序通常对应着文件、静态和可以复制进程是暂时的,程序使长久的:进程是一个状态变化的过程,程序可长久保存进程与程序组成不同:

2017-12-06 23:27:32 166

原创 12.Linux文件编程

1.所谓系统调用是指操作系统提供给用户的一组“特殊”接口,用户程序可以通过这组“特殊”接口来获得操作系统内核提供的的服务2.由于在Linux中,为了更好地保护内核空间,将程序的运行空间分为内核空间和用户空间(也就是常称的内核态和用户态),它们分别运行在不同的级别上,在逻辑上是相互隔离的 因此,用户进程在通常情况下不允许访问内核数据,也无法使用内核函数,它们只能在用户空间操作用户数据,调用用户空

2017-12-06 23:04:58 262

原创 11.数据结构(4)

一、树的概念1.树是n(n>=0)个结点的有限集 n=0的时候称为空树,在任意一颗非空树中:(1)有且仅有一个特定的称为根(root)的结点;(2)当n>1时,其余结点可以分为m(m>0)个互不相交的有限集T1、T2、T3.....Tm,其中,每一个集合本身又是一棵树,并且称为跟的子树2.结点:树的结点包含一个数据元素及若干个指向其子树的分支度:结点拥有的子树称为结点的

2017-12-06 22:34:58 233

原创 10.数据结构(3)

队列1.队列是特殊的线性表;队列仅在线性表两端进行操作;队头(Front):取出数据的一端;队尾(Rear):放入数据的一端;性质:先进先出2.队列的抽象数据模型:1)初始化操作,建立一个空队列Q;2)若队列存在,则销毁它;3)将队列清空4)若队列Q为空,返回true,否则返回false;5)若队列Q存在且非空,用e返回队列Q的队头元素;6)若队

2017-12-06 22:16:22 139

原创 9.数据结构(2)

栈1.是限定仅在表尾进行插入和删除操作的线性表 又称后进先出的线性表 LIFO结构栈是一个特殊的线性表,只能在一端操作;栈顶(top):允许操作 的一端;栈底(bottom):不允许操作的一端2. 空栈:不含任何数据元素的栈;top=-1;3. 栈的操作:进栈,压栈,入栈:栈的插入操作;出栈,弹栈:栈的删除操作;栈中有一个元素时,top=0;4. 栈的抽象数据类

2017-12-06 22:09:08 256

原创 8.数据结构(1)

一、线性表线性表的定义:定义n个数据元素的有限序列,记作(a1, a2, …, an)ai 是表中数据元素,n 是表长度线性表的特点:除第一个元素外,其他每一个元素有一个且仅有一个直接前驱  除最后一个元素外其他每一个元素有一个且仅有一个直接后继二、顺序表定义 :将线性表中的元素相继存放在一个连续的存储空间中  可利用一维数组描述存储结构特点 :线性表的顺序存储方式遍历 :

2017-12-06 22:00:10 515

原创 7.C语言(5)

一、结构体1.声明一个结构体类型的一般形式为:struct    结构体名   {成员表列};2.定义结构体类型变量:(1)先声明结构体类型再定义变量名  例如:struct  student        student1, student2;(2)在声明类型的同时定义变量  这种般形式为:      struct 结构体名     {         成员表列;

2017-11-19 18:48:29 347

原创 6.C语言(3)(4)

一、指针1.指针是变量的一种,里面是一个地址,通过这个地址找到要找的数据 实质:单元的地址就是指针内容2. &是取地址的运算符,*是表示指针运算符  例:int  *p1,a ;  p1=&a;   *p1 =3;3.函数的参数不仅可以是整型、实型、字符型等数据,还可以是指针类型 作用是将变量的地址传送到另一个函数中4.指针变量初始化赋值;把一个变量的地址赋予指向相同数据类型的

2017-11-19 18:01:03 502

原创 5.C语言(2)

一、数组1.一维数组(1)一维数组的定义格式为:类型说明符  数组名[常量表达式];  例如:  int a[10];  它表示定义了一个整形数组,数组名为a,有10个元素(2)在定义数组时,需要指定数组中元素的个数,方括弧中的常量表达式用来表示元素的个数,即数组长度(3)常量表达式中可以包括常量和符号常量,但不能包含变量 注意:C语言不允许对数组的大小作动态定义,即数组的大小不依

2017-11-12 20:51:30 366

原创 4.C语言(1)

一、基本数据类型(1)整型int :整数,在目前绝大多数机器上占4个字节。TC环境中是2个字节单精度实型float :单精度浮点数,一般是4个字节长双精度实型double: 双精度浮点数,一般是8个字节长字符型char: 字符,一般是1个字节长 用来表示256个ASCII字符,或者0~255的整数枚举型enum(2)数据的表现形式有两种:常量 :是一种在程序中保

2017-11-10 20:00:04 188

原创 3.shell脚本

1.shell 是命令解析器,将用户输入的指令转化为机器可以运行的程序2.利用vim编辑器shell格式:#!/bin/bash    ☆#comments   注释your command go here  命令3.编辑完毕将.sh文件改为可执行文件再执行 chomad4.例子(1).#!/bin/basha="hello world"echo $a

2017-11-10 10:25:32 171

原创 2.Linux系统常用工具(vim gcc gdb make)

一.文本编辑器 vim1.基本模式(1)命令行模式:控制光标移动,按键操作 按[i]进入插入模式(2)插入模式:只有在此模式下,才可以输入文字 [esc]进入命令行模式(3)底行模式:将文件保存或退出vim,也可以设置编辑环境 [:]进入底行模式2.命令行模式基本操作(1)进入与退出         进入:输入vim和文件名称 退出:底行模式下输入wq(保存并退出)q!

2017-11-09 10:48:23 347

原创 1.Linux基本常用命令

一、用户管理命令useradd 添加用户  userdel 删除用户  passwd 修改密码  su 切换用户  exit 退出二、文件目录命令ls 显示文件  ls -l 显示文件属性 ls -a 显示所有文件cd 进入目录  cd ..进入上一级目录touch 创建文件 mkdir 创建目录  mkdir -p 若路径中无输入的目录,先创建cp 复制文件  cp -r

2017-11-06 16:28:13 310

空空如也

空空如也

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

TA关注的人

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