• avatar Surlaroute 2019-08-02 01:19:54

    Docker介绍

    目录 从虚拟化技术说起 什么是虚拟化 虚拟化种类 全虚拟化架构 OS层虚拟化架构 硬件层虚拟化 什么是Docker 容器技术 Docker Docker和虚拟技术的区别 Docker特点 从虚拟化技术说起 什么是虚拟化 在计算机中,虚拟化是一种资源管理技术。将计算机的各

    来自 Surlaroute
    00
  • avatar Surlaroute 2019-08-01 21:40:46

    Docker镜像容器操作

    目录 系统环境说明 镜像操作 拉取镜像 搜索网上镜像 查看本地镜像 删除镜像 删除所有镜像 容器的操作 创建与启动容器 进入容器 退出容器 查看容器 停止容器 系统环境说明 宿主机是centos7.6 Docker版本是19.03.1 镜像操作 拉取镜像

    来自 Surlaroute
    00
  • avatar Surlaroute 2019-08-01 21:19:56

    Docker部署MySQL

    目录 系统环境说明 安装最新版本的MySQL 拉取MySQL镜像 启动容器 查看容器运行情况 进入容器 登入mysql 安装mysql5.7 拉取镜像 运行启动容器 开启外网访问 开放端口 查看端口是否开启成功 在本机使用工具连接 系统环境说明 宿主机是centos

    来自 Surlaroute
    00
  • avatar 王建峰 2018-10-31 17:18:00

    2018/10/31小结

    经过这些天的练习,不断的刷题,终于有了结果。昨天参加了上午的RHCSA和下午的RHCE考试,今天就收到了成绩(脚本判卷就是快),两门分数均在270左右。。虽然通过了,但是我对此还有点不满意。在下并非对成绩不满,而是由于我考场上的表现:上午考试很慌张,有很多本来可以避免的细节问题,比如创建的用户名看错

    来自 王建峰
    00
  • avatar 王建峰 2018-10-19 21:03:09

    找到一本不错的Linux电子书,附《Linux就该这么学》章节目录。

    本书是由全国多名红帽架构师(RHCA)基于最新Linux系统共同编写的高质量Linux技术自学教程,极其适合用于Linux技术入门教程或讲课辅助教材,目前是国内最值得去读的Linux教材,也是最有价值的Linux实验手册。 章节包括有: 第0章 咱们先来谈谈学习方法和红帽系统。 第1

    来自 王建峰
    00
  • avatar 王建峰 2018-10-18 21:00:14

    IP地址主机号全0和全1

      局域网的IP 在一个局域网中,有两个IP地址比较特殊,一个是网络号,一个是广播地址。网络号是用于三层寻址的地址,它代表了整个网络本身;另一个是广播地址,它代表了网络全部的主机。网络号是网段中的第一个地址,广播地址是网段中的最后一个地址,这两个地址是不能配置在计算机主机上的。 例如

    来自 王建峰
    00
  • avatar 王建峰 2018-10-16 22:40:55

    固件与引导程序与用户代码

    任何嵌入式产品在上电后,开始工作前,有一个重要的阶段:由引导程序 Bootloader 来为硬件做系列的初始化操作,如果带操作系统也会将加载引导操作系统。 那么,引导程序装在什么位置呢? 固件(firmware),是一种嵌入在硬件设备中的软件。通常它是位于特殊应用集成电路(ASIC)或可编

    来自 王建峰
    00
  • avatar Surlaroute 2019-07-31 10:07:38

    Git 配置用户名和邮箱

    Git用户名和邮箱有全局配置和仓库配置之分,仓库配置优先级高于全局配置。 全局配置 学习git的时候, 开始使用之前都配置了一个全局的用户名和邮箱。比如,使用了github的用户名和邮箱来配置。 $ git config --global user.name “github’s Name”

    来自 Surlaroute
    00
  • avatar Surlaroute 2018-10-09 11:00:05

    什么是JSP?

    什么是JSP? 一种动态网页技术标准,使用Java语言作为脚本语言。 用Sun公司倡导、许多公司参与建立。 在服务器端执行,通常返回一个HTML文本给客户端。 文件后缀 .jsp 执行过程 客户端发出Request(请求) Tomcat(服务器)将JSP转译成Serv

    来自 Surlaroute
    00
  • avatar Surlaroute 2018-10-09 10:47:16

    SpringBoot war包部署到Tomcat服务器

    pom.xml文件修改<packaging>war</packaging>,默认是jar包,<build>节点中增加<finalName>springboot</finalName>,即生成war包的名字。 修改项目启动类,继承

    来自 Surlaroute
    00
  • avatar Surlaroute 2018-10-09 10:44:12

    JspSmartUpload 实现文件上传下载及Mysql实现分页

    一、写在前面 这篇文章主要是分享使用JspSamrtUpload实现多文件的上传下载功能,及使用Mysql数据库的 limit 函数实现文件显示列表的分页显示功能。 二、需要的jar包 下载JspSamrtUpload的jar包JspSamrtUploadUtf8.jar,下载后把它复制到we

    来自 Surlaroute
    00
  • avatar Surlaroute 2018-10-09 10:41:49

    Java程序员必须会的几个Linux 命令

    文件操作命令 1. 复制命令:cp 使用:cp 需要复制的文件  复制的位置 例子1:把/root/Demo1.java文件复制到  /root/t1 目录中     命令:cp Demo1.java t1 或  cp /root/Demo1.java /root/t1 需求:把/root

    来自 Surlaroute
    12
  • avatar Surlaroute 2018-04-28 23:10:55

    Linux安装redis

    版本 Linux版本: Redis版本:  3.0.0 安装gcc-c++ redis是C语言开发,安装redis需要先将官网下载的源码进行编译,编译依赖gcc环境。 输入命令 yum install gcc-c++ 如果你的系统已经安装了gcc,则会告诉你已经装了 如果没有安装,会提醒是否需要

    来自 Surlaroute
    00
  • avatar 王建峰 2018-10-07 22:01:30

    【RHEL7】重置root密码

    有时我也会面临忘记root密码的烦恼,但不用慌,通过以下几个简单的步骤可以重置我们我root用户密码。   首先确定当前系统为RHEL 7,因为我就是基于这个系统做的。 [hinzer@localhost ~]# cat /etc/redhat-release Red Hat Enterpr

    来自 王建峰
    00
  • avatar 王建峰 2018-10-07 22:00:40

    【RHEL 7】DHCP动态管理主机地址

    动态主机配置协议(DHCP)是一种基于UDP协议且仅限于在局域网内部使用的网络协议,主要用于大型的局域网环境或者存在较多移动办公设备的局域网环境中,其主要用途是为局域网内部的设备或网络供应商自动分配IP地址等参数。   需求:假如有100台用户需要上网,需要我们配置DHCP服务器来为机房中的客户

    来自 王建峰
    00
  • avatar 王建峰 2018-10-07 06:39:41

    【RHEL 7】Samba服务实现文件共享

    1987年,微软公司和英特尔公司共同制定了SMB(Server Messages Block,服务器消息块)协议,旨在解决局域网内的文件或打印机等资源的共享问题,这也使得在多个主机之间共享文件变得越来越简单。到了1991年,当时还在读大学的Tridgwell为了解决Linux系统与Windows系统

    来自 王建峰
    00
  • avatar 王建峰 2018-10-06 21:28:45

    【RHEL7】vsftpd服务程序的三种认证模式

    我们使用vsftpd服务程序里实现FTP协议,重点介绍三种认证模式的配置方法。也就是说,使用vsftpd配置服务器,用户可以通过以下三种方式访问到FTP服务器: 匿名开放模式:是一种最不安全的认证模式,任何人都可以无需密码验证而直接登录到FTP服务器。 本地用户模式:是通过Linux系统本地的账

    来自 王建峰
    00
  • avatar 王建峰 2018-10-04 20:37:26

    Linux查看一个进程占用的端口

    第一步,使用ps命令结合管道符 | 查询到进程的PID。查询进程关键字为xinetd(TFTP的服务程序) ps -aux | grep [name]   第二步,得到PID后,使用netstat命令查询端口占用 netstat -nap | grep [pid]   xin

    来自 王建峰
    00
  • avatar Surlaroute 2018-03-19 22:09:26

    数据库范式与实例

    设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小。 目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,

    来自 Surlaroute
    00
  • avatar Surlaroute 2018-03-17 10:37:45

    org.springframework.web.context.ContextLoaderListener 解决办法

    最近部署ssm项目在tomcat,tomcat启动的时候发出org.springframework.web.context.ContextLoaderListener 错误 严重: Error configuring application listener of class org.springf

    来自 Surlaroute
    00
  • avatar Surlaroute 2018-01-03 11:59:14

    .NET使用存储过程实现对数据库的增删改查

    一、整体思路 先建立存储过程,再通过.net 调用存储过程,来实现对表的增删改查。 二、新建数据库及存储过程 打开SqlServer2008,新建数据库orm1,及表Student。   数据库和表建立好我们现在来建立存储过程。 存储过程 ad :新增学生信息

    来自 Surlaroute
    00
  • avatar Surlaroute 2018-01-02 20:05:44

    .NET使用DAO.NET实体类模型操作数据库

    一、新建项目 打开vs2017,新建一个项目,命名为orm1       二、新建数据库 打开 SqlServer数据库,新建数据库 orm1,并新建表 student 。   三、新建 ADO.NET 实体数据模型    

    来自 Surlaroute
    00
  • avatar 王建峰 2018-10-01 09:05:05

    【Linux】AutoFs自动挂载服务

    无论是Samba服务还是NFS服务,都要把挂载信息写入到/etc/fstab中,这样远程共享资源就会自动随服务器开机而进行挂载。虽然这很方便,但是如果挂载的远程资源太多,则会给网络带宽和服务器的硬件资源带来很大负载。如果在资源挂载后长期不使用,也会造成服务器硬件资源的浪费。可能会有读者说,“可以在每

    来自 王建峰
    00
  • avatar 王建峰 2018-09-29 22:19:09

    【Linux】firewall防火墙管理工具

    区域(Zone)概念 相较于传统的防火墙管理配置工具,firewalld支持动态更新技术并加入了区域(zone)的概念。简单来说,区域就是firewalld预先准备了几套防火墙策略集合(策略模板),用户可以根据生产场景的不同而选择合适的策略集合,从而实现防火墙策略之间的快速切换。      区

    来自 王建峰
    00
  • avatar 王建峰 2018-09-29 22:18:48

    vsftpd --用户名单文件ftpusers和user_list

    vsftpd(very secure ftp daemon,非常安全的FTP守护进程)是一款运行在Linux操作系统上的FTP服务程序,不仅完全开源而且免费,此外,还具有很高的安全性、传输速度,以及支持虚拟用户验证等其他FTP服务程序不具备的特点。   ftpusers和user_list 

    来自 王建峰
    00
  • avatar 王建峰 2018-09-28 16:59:45

    我们应该怎样来提高自己的编程能力?

        故天将降大任于是人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身,行拂乱其所为,所以动心忍性,曾益其所不能。      --《孟子》        我曾经很是厌倦敲代码的日子,因为觉得,我所写的程序,无论大小 ,其实都是拿别人的模块,按照自己的实际需要,稍微改动一下,再组合成来实现功能即可

    来自 王建峰
    00
  • avatar 王建峰 2018-11-01 12:32:29

    TCP/IP学习笔记(2)-数据链路层

    转载于:Linux就该这么学     数据链路层有三个目的: 为IP模块发送和 接收IP数据报。 为ARP模块发送ARP请求和接收ARP应答。 为RARP发送RARP请 求和接收RARP应答 ip大家都听说过。至于ARP和RARP,ARP叫做地址解析协议,是用IP

    来自 王建峰
    00
  • avatar 王建峰 2018-11-01 06:43:51

    Linux查看硬盘设备信息相关命令

    lsblk 列出系统中的所有块设备,并以标准树状格式输出设备的信息(块名   块大小  块类型  挂载点) df -h  查看已挂载的设备信息(文件系统  大小 使用  可用  使用百分比 挂载点) blkid 对系统中已格式化的块设备查询,主要用来查询硬盘的文件系统类型(包括交换分区),UUI

    来自 王建峰
    00
  • avatar Surlaroute 2017-08-08 14:16:22

    Python编程环境的搭建及HelloWorld的诞生

    Python是一 种面向对象、解释型的计算机程序设计语言,在1991年公开发布了第一个发行版本。目前最新的版本是Python 3.6。 下载:登录Python官方网站https://www.python.org/可以免费下载安装包。 安装:和普通软件的安装差不多,一路next就OK了,不过为

    来自 Surlaroute
    00
  • avatar 王建峰 2018-10-11 11:43:52

    httpd配置文件 /etc/httpd/conf.d/*.conf

    httpd服务程序的配置信息被写到  /etc/httpd/conf.d/xxx.conf 这样的文件中,其实也就等于写在主配置文件 /etc/httpd/conf/httpd.conf里。   因为这写文件在httpd主配置文件生效的时候,就已经被加载进来了。 vim /etc/httpd

    来自 王建峰
    00
  • avatar Surlaroute 2016-05-10 17:30:23

    如何利用C语言实现确定范围及不重复的随机数

    在c语言学习完毕之际,老师要求设计一简单的C语言系统,其中一道题目是交规考试,其一部分要求系统自动从1000道题中抽取20道以供考生作答! 在C语言标准库头文件stdlib.h中定义了随机数函数rand() 其函数原型为  int rand(void);    函数功能为   产生0到3276

    来自 Surlaroute
    00
  • avatar 王建峰 2018-10-02 17:19:22

    【RHEL 7】检查服务进程的运行状态...

    系统环境:RHEL 7   给服务器配置DHCP服务,动态给局域网中的主机分配网络参数。但当我以为大功告成的时候,客户端竟没有获取到,报错如下:   [root@localhost Desktop]# systemctl restart network Job for network.ser

    来自 王建峰
    00
  • avatar Surlaroute 2019-08-01 14:51:32

    CentOS安装Docker

    系统要求 Docker CE 支持 64 位版本 CentOS 7,并且要求内核版本不低于 3.10。 CentOS 7 满足最低内核的要求,但由于内核版本比较低,部分功能(如 overlay2 存储层驱动)无法使用,并且部分功能可能不太稳定。 使用 yum 安装 通过 uname -r 命令

    来自 Surlaroute
    00
  • avatar Surlaroute 2018-04-28 15:25:28

    vim 基本命令入门

    简介 vim是Linux 系统下类似于Windows的记事本的编辑器。 vim 中经常使用的三种模式 一般模式:浏览文件内容。 插入模式:编辑文件内容。 底行模式:进行保存编辑内容,退出等操作。 基本命令操作 vim filename ,打开文件,进入一般模式。   那么现在如果我想修改文件怎么办

    来自 Surlaroute
    00
  • avatar Surlaroute 2018-01-02 13:22:07

    .NET 连接SqlServer数据库及基本增删改查

    一、写在前面 因为这学期选修的 .net 课程就要上机考试了,所以总结下.net 操作 SqlServer 数据的方法。(因为本人方向是 Java,所以对.net 的了解不多,但以下所写代码均是经过测试成功的) 二、.net 连接数据库  在web.config文件中配置数据库连接,代码写在&

    来自 Surlaroute
    00
  • avatar Surlaroute 2016-05-04 17:42:38

    如何将二维数组作为函数参数

    1、函数声明: 将二维数组作为函数参数的函数声明有两种 二维数组型:如 int sum(int ar2[][size]);注意:行数可不声明,但要求列数必须要声明,不然将发生错误! 指针型:如 int sum(int (*ar2)[list_size],int row_size); 其

    来自 Surlaroute
    00
  • avatar Surlaroute 2016-05-04 15:23:23

    从汉诺塔问题认识递归

    1、问题描述:有a,b,c三个底座,上面可以放盘子。初始时,a座上有n个盘子,这些盘子大小各不相同,大盘子在上,小盘子在下,依次排列。要求将a座上的n个盘子移动到c座上,每次只能移动一个,且移动过程中要求保持小盘子在上,大盘子在下,可借助b实现移动。现要求给出移动的步骤。 2、问题分析:本问题要求

    来自 Surlaroute
    00
  • avatar 王建峰 2018-09-27 21:38:51

    【Ubuntu14.04】网络模式与网卡配置

    VMware虚拟机软件为什么提供有三种网络模式(桥接模式、NAT模式、仅主机模式),本章节会分别介绍着三种模式的区别,如何在Ubuntu14.04环境下设置网络连接模式与配置网卡信息的方法。     关于三种网络模式   桥接模式:让虚拟机与物理机之间架设一座桥梁,虚拟机可通过桥接到的物理

    来自 王建峰
    00
  • avatar 王建峰 2018-09-26 19:49:18

    Ubuntu 14.04 重启网卡

    使用 service networking restart 这个命令重启网卡服务,竟然重启失败。 linux@linux:~$ service networking restart stop: Unknown job: networking start: Unknown job: net

    来自 王建峰
    00
  • avatar 王建峰 2018-09-23 22:26:13

    分享一个查询Linux 命令的一个小网页

    遇到不懂的命令,建议先用 'man 命令' 的方式查询。但如果英文不太好的(像我这样..),或者man查看不到自己想要的。这里推荐一个网页,可以查询到中文的说明,和一些常用的使用。 http://man.linuxde.net/      

    来自 王建峰
    00
  • avatar 王建峰 2018-09-23 10:37:20

    【嵌入式 C】向地址空间写数据

    做嵌入式开发的,一定免不了和硬件打交道。我们通过读写寄存器的方式来管理相关的硬件,这里的寄存器并不是CPU空间中的寄存器,我们的寄存器实际上是一个地址单元(属于特殊寄存器),烧写程序时要被映射到地址空间上。所以我们通过读写地址这种方法来访问寄存器是避免不了的。 方法: (*(volatile

    来自 王建峰
    00
  • avatar 王建峰 2018-09-22 23:07:26

    【解决】window编辑文件Linux显示 ^M 乱码

    在windows环境编辑一个文件,准备在Linux中使用。但是打开文件发现 出现 ^M 这种乱码。   这是由于windows和Linux对回车符定义不同造成的。windows回车是 0XOD 0X0A ,而Linux对回车符的定义时 0X0A。不统一就导致了这种乱码。下面是我从网上找到的解

    来自 王建峰
    00
  • avatar 王建峰 2018-09-21 06:26:11

    汇编语言 --裸机驱动的开发步骤

    最简例子  以流行的FS4412单片机为例,实现LED灯控制。 准备: 开发设备原理图 芯片手册 PDF阅读器(带关键词查找功能) 开发工具链 1. 看电路图     a. 找到我要控制的设备     b. 找到设备在CPU侧的控制管脚(如GPX2_7) 2. 看芯片手册

    来自 王建峰
    00
  • avatar 王建峰 2018-09-19 22:42:21

    汇编语言 --实现软中断机制

    CPU会自动识别产生的异常,并将当前的PC值定位到异常向量表的某一个位置,但是由于异常的产生是随机的,我们并不知道什么时间会出现在什么类型的异常,所以需要一个异常向量表(也有说是中断向量表),来完成对不同异常处理函数入口地址的映射。 中断也是异常的一种,中断有硬中断(由硬件产生的中断)和软中断(软

    来自 王建峰
    00
  • avatar 王建峰 2018-09-19 22:41:08

    MariaDB 常用命令汇总

    MySQL数据库项目自从被Oracle公司收购之后,从开源软件转变成为了“闭源”软件,这导致IT行业中的很多企业以及厂商纷纷选择使用了数据库软件的后起之秀—MariaDB数据库管理系统。MariaDB数据库管理系统也因此快速占据了市场。   列举一些常用的命令,方便对数据库进行管理。相关介绍

    来自 王建峰
    00
  • avatar 王建峰 2018-09-19 18:55:33

    C语言 对可移植性的思考

    转载于:https://blog.csdn.net/chengxuyuan997/article/details/81126944     首先,在这里铺垫一下。学过Win32程序设计的人肯定都听说过API(Application Program Interface)。我就先说说API,高手绕

    来自 王建峰
    00
  • avatar 王建峰 2018-09-18 20:35:38

    汇编语言 --读写存储器

      load/store架构规定,存储器之间不能直接拷贝,需通过寄存器做中转。于是我们通过LDR指令存储器中的数据到寄存器;STR指令将寄存器中的数据写到存储器。  ldr r0,[r1]  (load)   //r0=*r1    r1里存放的是地址,把该地址里存放的内容读入到r0中   L

    来自 王建峰
    00
  • avatar 王建峰 2018-09-18 20:34:33

    汇编语言 --函数调用

      汇编语言实现函数的调用,代码如下 .text @表示为代码段,以下内容是指令 main: @入口函数,在这里可有可无 mov r0,#1 bl fun @b1 为跳转指令,同时保存下一个地址的位置到LR寄存去(作为函数的返回地址

    来自 王建峰
    00
  • avatar 王建峰 2018-09-16 22:04:37

    【Linux】计划任务服务程序

    计划任务分为一次性计划任务与长期性计划任务,大家可以按照如下方式理解。 一次性计划任务:任务只需执行一次,使用`at`命令实现。例如:今晚11点30分开启网站服务。 长期性计划任务:执行周期性的具体任务,crond服务来实现,命令是`crontab`.例如:每周一的凌晨3点25分把/hom

    来自 王建峰
    00
  • avatar 王建峰 2018-09-16 21:42:33

    【shelll脚本编程】几个小案例

      案例1:批量添加用户 从文件users.txt中导入用户名列表,逐一判断该用户是否存在,如果存在则抛出提示,不存在则添加用户。 #!/bin/ bash #users.sh read -p "Enter:" PASSWD for UNAME in `cat user

    来自 王建峰
    00
  • avatar 王建峰 2018-09-16 07:37:03

    ssh秘钥登录Linux机

    秘钥即使密文的钥匙,分为公钥和私钥。公钥对传输前的数据进行加密处理,掌握私钥的用户才能解密这段数据。Putty采用秘钥的验证方式,不仅使登录更加安全,且避免要每次登录都要输入密码这种麻烦。   准备工具:一个叫puttygen的软件(用来生成秘钥对)、登录软件Putty 下载链接:https:

    来自 王建峰
    00
  • avatar 王建峰 2018-09-14 21:41:31

    【RHEL 7】重要的环境变量

     参考:https://www.linuxprobe.com/chapter-03.html   命令的执行过程 为了更好地帮助大家理解变量的作用,刘遄老师给大家举个例子。前文中曾经讲到,在Linux系统中一切都是文件,Linux命令也不例外。那么,在用户执行了一条命令之后,Linux系统中到

    来自 王建峰
    00
  • avatar 王建峰 2018-09-13 20:04:33

    【C语言+sqlite3 API接口】实现水果店管理

     实验内容: 假如我家开了个水果超市,有以下水果,想实现自动化管理,扫描二维码就能知道当前的水果状态,进货几天了, 好久需要再次进货,那些水果畅销,那些水果不畅销,那些水果春夏秋冬的价格波动,好,那么现在我想将 这些信息保存在数据库中,那么我应该怎么做? 超市每天水果都有进货和卖出嘛,水果的

    来自 王建峰
    00
  • avatar 王建峰 2018-09-13 20:04:19

    【RHEL7】给虚拟机配置Yum本地仓库

    Yum软件仓库,也软件源或者是软件站点。分别有本地源和网络源两种。 这里我们通过系统镜像文件获取本地源。   1.VMware选择使用镜像文件   2.进入到/etc/yum.repos.d/目录中(因为该目录存放着Yum软件仓库的配置文件),使用Vim编辑器创建一个名为rhel7.r

    来自 王建峰
    00
  • avatar 王建峰 2018-09-27 23:44:59

    消除vim编辑器搜索之后的高亮

    进入vim 编辑器界面 方法一: :noh  (底行模式) 方法二: 搜索任意不存在的字符串 比如 /oooooo 即可.

    来自 王建峰
    00
  • avatar 王建峰 2018-09-23 22:24:53

    ARM中断机制 --外部中断配置

    很多情况下,要实现一个嵌入式程序,用到某一功能或者某一个硬件资源时,我经常拿厂家或者是其他人给提供的代码,参考其中的配置代码段部分,只去修改实现成我需要的功能就好。相信大家也和我有相似的经历吧!?从工程的角度来说,这没问题。但是理论上总感觉少了点什么,今天以外部中断的寄存器配置为例,进一步讲解中断源

    来自 王建峰
    00
  • avatar 王建峰 2018-09-16 15:21:33

    【Linux C 】Linux开发之在线词典

    做了一个小级别的实验项目,对之前所学过的知识有个综合性的总结。在线词典实验涉及有,Linux C语言的开发、网络套接字编程、多进程开发、sqlite3数据库接口调用、文件读写等操作,make编译及Makefile文件的编写。。   项目介绍 项目总体划分为客户端、和服务端两个部分。客户端(也是

    来自 王建峰
    00
  • avatar 王建峰 2018-09-12 20:29:27

    【C语言】回调函数(Callback Function)

    定义和使用场合 回调函数是指 使用者自己定义一个函数,实现这个函数的程序内容,然后把这个函数(入口地址)作为参数传入别人(或系统)的函数中,由别人(或系统)的函数在运行时来调用的函数。 函数是你实现的,但由别人(或系统)的函数在运行时通过参数传递的方式调用,这就是所谓的回调函数。简单来说,就是由

    来自 王建峰
    00
  • avatar 王建峰 2018-09-09 19:51:29

    【Linux】那些可以提高工作效率的命令

    df 命令 用于查看 Linux 文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息。如: df -k 以千字节 (KB) 为单位显示各分区的信息; df -a 显示所有分区, 包括大小为0 的分区; df -T 显示分区类型 (EXT2 或EXT3等)。

    来自 王建峰
    00
  • avatar 王建峰 2018-09-08 21:27:30

    【RHEL7 】-- systemctl命令管理系统服务

    systemd初始化进程  Linux操作系统的开机过程是这样的,即从BIOS开始,然后进入Boot Loader,再加载系统内核,然后内核进行初始化,最后启动初始化进程。 初始化进程作为Linux系统的第一个进程,它需要完成Linux系统中相关的初始化工作,为用户提供合适的工作环境。红

    来自 王建峰
    00
  • avatar 王建峰 2018-09-08 12:06:04

    TCP协议+IO多路复用 --- select,poll,epoll分析

      select、poll、epoll select,poll,epoll都是IO多路复用的机制。I/O多路复用就是通过一种机制,一个进程可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。但select,poll,epoll本质上都是同步I/

    来自 王建峰
    00
  • avatar 王建峰 2018-09-07 22:29:22

    学习之路

     稻盛和夫先生《活法》 “工作马马虎虎,只想在兴趣和游戏中寻觅快活,充其量只能获得一时的***,绝不能尝到从心底涌出的惊喜和快乐,但来自工作的喜悦并不像糖果那样—放进嘴里就甜味十足,而是需要从苦劳与艰辛中渗出,因此当我们聚精会神,孜孜不倦,克服艰辛后的成就感,世上没有哪种喜悦可以类比”。

    来自 王建峰
    00
  • avatar 王建峰 2018-09-07 16:30:25

    【Linux C】read函数对 EINTR 错误的处理

    分享一个工业级代码,read读文件数据。 读的过程中,调用被信号中断,于是返回一个EINTR错误,read读取失败。 由于没有读到数据而被意外中断,所以需要从新读数据。 while (ret < 0 && EINTR == errno); ........ .....

    来自 王建峰
    00
  • avatar 王建峰 2018-09-06 21:22:07

    UDP服务器的实现

    UDP是一种面向无连接的不可靠传输协议,有处理速度快、消耗资源小的特点。   好奇UDP通讯怎么实现并发服务。TCP可以通过监听服务,创建新的会话,实现并发; UDP没有这种监听机制,如何实现并发?   其实,UDP本身就可连接多个客户端。UDP是不区分客户端,也不需要等待客户端的连接

    来自 王建峰
    00
  • avatar 王建峰 2018-09-02 09:28:19

    【Linux】man 查询

    man的分卷号,分成很多部分,分别是: 1 用户命令, 可由任何人启动的。 2 系统调用, 即由内核提供的函数。 3 例程, 即库函数,比如标准C库libc。 4 设备, 即/dev目录下的特殊文件。 5 文件格式描述, 例如/etc/passwd。 6 游戏, 不用解释

    来自 王建峰
    00
  • avatar 王建峰 2018-09-01 14:13:01

    配置虚拟机与真机在同一个网段下

    为了方便物理机访问虚拟机,需要分别将虚拟机网卡和物理机连接内网的网卡配置在同一个网关下。最后通过ping操作,查看是否配置成功。 配置过程非常简单,但是笔者在配置中遇到一点小问题,一有步骤没有做好,磨蹭了半天。这里做个了结。   真机操作系统:windows (window 7) 虚拟机:

    来自 王建峰
    00
  • avatar 王建峰 2018-08-30 10:42:37

    【C语言】使用库和手动导入c源文件的区别

    之前编写一类功能,封装fun.c fun.h文件放在同一个目录下面,然后在mian.c文件里 include "fun.h"。以为这样就叫做使用库,其实不然。这样的方式仅仅编写了库的源码,而没有生成库文件。什么意思呢? 如果仅编写源码,然后引用。这样只相当于是把源码复制大man

    来自 王建峰
    00
  • avatar 王建峰 2018-08-27 09:34:44

    【Linux C】lstat获取文件属性

      int lstat(const char *path, struct stat *buf); lstat函数获取文件的所有属性,从stat结构体中获取相应信息。 函数具体相关,可使用 man lstat  查看   示例用到lstat函数,将模仿ls命令。遍历输出文件类型、

    来自 王建峰
    00
  • avatar 王建峰 2018-08-24 07:35:40

    【Linux】文件权限掩码之umask命令

    转至:https://blog.csdn.net/xiazhiyiyun/article/details/59663334   umask命令 umask命令是bash中自带的一个命令。在理解umask之前呢需要了解linux系统下的文件权限相关知识。 umask值 umask命令可以

    来自 王建峰
    00
  • avatar 王建峰 2018-08-20 20:20:04

    【SQLite】 数据库的相关命令集合

    SQLite是一种嵌入式数据库,它的数据库就是一个文件。由于SQLite本身是C写的,而且体积很小,所以,经常被集成到各种应用程序中,甚至在iOS和Android的App中都可以集成。   命令操作(Linux环境) 1, 数据库的安装      sudo apt-get instal

    来自 王建峰
    00
  • avatar 王建峰 2018-08-20 20:11:51

    TCP三次握手与四次挥手

    我们都知道TCP是一种可靠的,面向连接的传输层协议。如何理解TCP底层的运作机制,对于应用开发者而言,socket内部封装了tcp协议,不用操心,但却是面试环节中常考的问题之一。   目的     熟练三次握手建立连接过程     了解数据传输过程     熟练四次挥手断开连接

    来自 王建峰
    00
  • avatar 王建峰 2018-08-20 12:07:07

    【Linux】 输入重定向与输出重定向

    重定向:就是改变原操作方向,重新指向一个新的目标。   输入重定向:是将文件的内容输入到命令中 输出重定向:是将命令的结果输出到文件中     标准输入输出 Linux中存在三种默认重定向,对应的文件描述符0、1、2 标准输入重定向(STDIN,文件描述符为0):默认

    来自 王建峰
    00
  • avatar 王建峰 2018-08-19 19:57:14

    网络抓包工具 wireshark 入门教程

    Wireshark(前称Ethereal)是一个网络数据包分析软件。网络数据包分析软件的功能是截取网络数据包,并尽可能显示出最为详细的网络数据包数据。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。 网络管理员使用Wireshark来检测网络问题,网络安全工程师使用Wir

    来自 王建峰
    01
  • avatar 王建峰 2018-09-09 10:09:16

    该站点安全证书的吊销信息不可用,是否继续?

      问题描述: 安装typing master10 后,打开后出现这个“安全警报”,很烦人,一直不能关掉。   原因: 种现象一般不会涉及到正真的所谓安全问题,只不过是一种突发性的系统认证错误。   解决办法: 在IE浏览器中-工具-Internet选项,点击“高级”,不勾选“检查

    来自 王建峰
    00
  • avatar 摸鱼达人2.0 2019-08-02 10:44:18

    排序归纳

    title: 排序归纳date: 2019-03-16 21:34:16 冒泡排序 def maopao_s(list): n=len(list) for i in range(n-1): for j in range(n-i-1): if

    来自 摸鱼达人2.0
    00
  • avatar 王建峰 2018-08-21 10:13:22

    【Shell编程】批量创建用户

    从文件中导入用户名,用户指定统一密码,批量创建用户。   users.txt zhangsan lisi wangwu   adduser.sh #! /bin/bash #add user read -p "please input passwd:" P

    来自 王建峰
    00
  • avatar 王建峰 2018-08-14 18:27:09

    Linux还是Windows的威胁吗?

    曾经有一段时间Windows和Linux是激烈的敌人,开源世界的粉丝讨厌微软的操作系统。毋庸置疑,许多人将Linux描述为Windows杀手,因为他们认为开源操作系统是没有微软的世界未来。但是,正如我们现在都能看到的那样,这种情况从未发生过, Windows仍然主宰桌面世界。 例如,我记得在Win

    来自 王建峰
    00
  • avatar 王建峰 2018-08-12 09:04:53

    【Shell编程】 (函数)判断用户是否存在

    要求用户输入一个用户名,查询系统中是否存在该用户,若有打印用户存在,若不存在添加该用户   #!/bin/bash check_user() { #判断用户是否存在passwd中 i=`cat /etc/passwd | cut -f1 -d':' | grep -w "$1

    来自 王建峰
    00
  • avatar 摸鱼达人2.0 2019-08-02 10:46:42

    剑指offer_Python

    二维数组中的查找 class Solution: def Find(self, target, array): # write code here ch = len(array[0]) g = len(array) z = g-

    来自 摸鱼达人2.0
    00
  • avatar 王建峰 2018-08-10 20:36:56

    Linux进程通信之信号灯

    拥有梦想是一种智力,实现梦想是一种能力   概述 若是一个多线程的进程,由于各个线程共享一个地址空间,可以直接通过变量的形式进行通信。而进程,由于各个进程独占一个地址空间,我们需要一种通信机制来完成进程间的数据交互。本章介绍的是信号灯机制,进程间的通信机制有以下几种: 无名管道(pipe

    来自 王建峰
    00
  • avatar 王建峰 2018-08-08 15:29:37

    【Python】 如何动态添加类属性与方法

      一些概念 涉及到一些基础概念,本章要讨论的相关术语。但是有些概念又是一时半会讲不清楚,所以笔者尽量找到简练形象的描述,并附上参考链接。  对象 属性 方法 类 实例   类(1) - 《零基础学python》(第二版):https://docs.python

    来自 王建峰
    00
  • avatar 王建峰 2018-08-06 12:11:24

    【Ubuntu】 解决中文输入问题 --- 安装搜狗拼音输入法

    使用 Linux 最大的烦恼就是中文输入法了,但是在 Ubuntu 下面,这都不是事!搜狗拼音已经有 Ubuntu 版本 了,所以我们虽然安装的是英文版的 Ubuntu,不过照样可以使用中文输入法。         (1)下载 在 Ubuntu 下打开搜狗输入法 Linux

    来自 王建峰
    00
  • avatar 王建峰 2018-08-05 23:02:19

    Linux进程通信之消息队列

    拥有梦想是一种智力,实现梦想是一种能力   概述 若是一个多线程的进程,由于各个线程共享一个地址空间,可以直接通过变量的形式进行通信。而进程,由于各个进程独占一个地址空间,我们需要一种通信机制来完成进程间的数据交互。本章介绍的是消息队列,进程间的通信机制有以下几种: 无名管道(pipe)

    来自 王建峰
    00
  • avatar 王建峰 2018-08-05 23:01:53

    Linux进程通信之共享内存

    拥有梦想是一种智力,实现梦想是一种能力   概述 若是一个多线程的进程,由于各个线程共享一个地址空间,可以直接通过变量的形式进行通信。而进程,由于各个进程独占一个地址空间,我们需要一种通信机制来完成进程间的数据交互。本章介绍的是共享内存,进程间的通信机制有以下几种: 无名管道(pipe)

    来自 王建峰
    00
  • avatar 王建峰 2018-08-05 07:32:03

    IT人员的职业生涯规划

    原创链接:https://blog.csdn.net/zhoufoxcn/article/details/52698668   最近在给部门同事做过一次职业生涯规划方面的讲座,在跟另一位从事技术管理的朋友聊天时,无意中谈起我的这个讲座,这位朋友盛情邀请我去他的公司给他们的技术人员也讲一讲IT

    来自 王建峰
    11
  • avatar 王建峰 2018-08-04 21:01:51

    【C语言】if分支

    if 是C语言中的条件判断语句,可以构成三种分支结构。单分支结构,双分支结构,多分支结构。此外if可以嵌套使用,可构成更加深层次的逻辑结构。   单分支 判断为真则执行if语句,否者跳过该语句 #include <stdio.h> int main(void) { int

    来自 王建峰
    00
  • avatar 王建峰 2018-08-04 21:01:43

    Linux进程通信之信号机制

    拥有梦想是一种智力,实现梦想是一种能力   概述 若是一个多线程的进程,由于各个线程共享一个地址空间,可以直接通过变量的形式进行通信。而进程,由于各个进程独占一个地址空间,我们需要一种通信机制来完成进程间的数据交互。本章介绍的是信号机制,进程间的通信机制有以下几种: 无名管道(pip

    来自 王建峰
    00
  • avatar 王建峰 2018-08-03 22:13:41

    Linux进程通信之有名管道

    拥有梦想是一种智力,实现梦想是一种能力   概述 若是一个多线程的进程,由于各个线程共享一个地址空间,可以直接通过变量的形式进行通信。而进程,由于各个进程独占一个地址空间,我们需要一种通信机制来完成进程间的数据交互。本章介绍的是有名管道,进程间的通信机制有以下几种: 无名管道(pip

    来自 王建峰
    00
  • avatar 王建峰 2018-08-03 14:53:15

    web服务器、应用服务器、web应用框架的关系

      概念 web服务器:负责处理http请求,响应静态文件,常见的有Apache,Nginx以及微软的IIS. 应用服务器:负责处理逻辑的服务器。比如php、python的代码,是不能直接通过nginx这种web服务器来处理的,只能通过应用服务器来处理,常见的应用服务器有uwsgi、to

    来自 王建峰
    00
  • avatar 王建峰 2018-08-02 23:02:16

    Linux进程通信之无名管道

    拥有梦想是一种智力,实现梦想是一种能力   概述 若是一个多线程的进程,由于各个线程共享一个地址空间,可以直接通过变量的形式进行通信。而进程,由于各个进程独占一个地址空间,我们需要一种通信机制来完成进程间的数据交互。本章介绍的是无名管道,进程间的通信机制有以下几种: 无名管道(pip

    来自 王建峰
    00
  • avatar 王建峰 2018-08-01 22:49:39

    Linux线程的同步与互斥机制

    拥有梦想是一种智力,实现梦想是一种能力。   概述 线程共享同一进程的地址空间,线程间通过全局变量交换数据进行通信。为了避免多个进程同时访问同一个共享资源而引发冲突,多个线程访问共享数据时需要同步或互斥机制 同步机制:指的是多个任务按照约定的先后次序相互配合完成一件事情 互斥机

    来自 王建峰
    00
  • avatar 王建峰 2018-07-31 21:11:59

    Linux子进程与守护进程创建管理

    拥有梦想是一种智力,实现梦想是一种能力。   概述 并发程序是应用开发中非常重要的一部分内容,如何实现程序的并发?包括多进程编程、进程间通信机制、多线程编程、线程间同步和异步机制等等。本次介绍多进程编程: fork创建进程 exit/_exit结束进程 exec函数族让进程执

    来自 王建峰
    00
  • avatar 王建峰 2018-07-31 21:11:37

    Linux进程相关概念

    拥有梦想是一种智力,实现梦想是一种能力。   程序&进程 程序:存放在磁盘上的指令和数据的有序集合(文件)   进程:执行一个程序所分配的资源的总称 程序 = 数据+代码 进程 = 数据+代码+堆栈+PCB+CPU寄存器值 程序是静态的,而进程是动态的,包括

    来自 王建峰
    00
  • avatar 王建峰 2018-07-30 21:01:29

    数据结构与算法学习笔记 (14)--排序算法之快速排序

    排序(Sort) 排序(Sort)是将无序的记录序列(或称文件)调整成有序的序列。 排序的目的是方便我们队数据查询记录、修改记录等操作。   排序的分类 按稳定性可分为稳定排序和非稳定排序,按待排序数据的存储位置又可分为内排序和外排序。 截止目前,各种内排序方法可归纳为以下

    来自 王建峰
    01
  • avatar 王建峰 2018-09-06 21:22:21

    recvfrom函数 "Transport endpoint is not connected"错误及解决

    今天练习了UDP通信,自信满满的敲完一个测试代码,编译无错误。然后执行,recvfrom函数 竟然抛出了一个 Transport endpoint is not connected 错误。多次检查并没有发现错误。最后还是一位大神发现了错误,告诉我的。 一个简单的错误,创建套接字的时候第二个参数应该

    来自 王建峰
    00
  • avatar 王建峰 2018-08-05 07:18:01

    物联网+人工智能+5G:时代抛弃你, 连个招呼都不打

    当前大热的人工智能、5G与物联网之间有什么关系呢?通信网络是人工智能爆发的基础, 人工智能将大幅提升通信网络能力。5G、人工智能和物联网,正在时代的路***汇,注定会携手同行,开启一场通信变革。     人工智能与物联网IoT的关系: 我认为物联网技术会应用于所有行业,是所有行业的工具。

    来自 王建峰
    03
  • avatar 王建峰 2018-08-01 22:49:19

    Linux线程及相关概念

    拥有梦想是一种智力,实现梦想是一种能力。   线程&进程 通常线程指的是共享相同地址空间的多个任务,每个任务是一个线程,而这种多线程的机制构成一个进程。普通进程只有一个线程,那就是main()函数的执行;而多线程进程可以有多个线程,main()是主线程,其他是子线程。 进程

    来自 王建峰
    00
  • avatar 王建峰 2018-07-29 20:35:15

    数据结构与算法学习笔记 (13)--排序算法之shell排序

    排序(Sort) 排序(Sort)是将无序的记录序列(或称文件)调整成有序的序列。 排序的目的是方便我们队数据查询记录、修改记录等操作。   排序的分类 按稳定性可分为稳定排序和非稳定排序,按待排序数据的存储位置又可分为内排序和外排序。 截止目前,各种内排序方法可归纳为以下五类: (1

    来自 王建峰
    00
  • avatar 王建峰 2018-07-28 12:15:21

    【Python】 闭包与装饰器

    一、闭包 概念:如果在一个函数中,定义了另外一个函数,并且那个函数使用了外面函数的变量,并且外面那个函数返回了里面这个函数的引用,那么称为里面的这个函数为闭包。 def greet(name): def say_hello(): print('h

    来自 王建峰
    00