study hard and make progress every day


  • sg函数-go


    关于sg函数的理解可以参考这篇blog: https://blog.csdn.net/bestsort/article/details/88197959



  • 梯度下降求凸函数最小值


    leetcode题目链接:https://leetcode-cn.com/problems/best-position-for-a-service-centre/



  • ipaddr int convert


    ’:’分字符串形式的ipv6地址和10进制形式的ipv6地址之间相互转换实现



  • CIDR ip to range


    将CIDR类型ip转换为range



  • union sql injection


    记一个 union sql 注入漏洞。union 操作符用于合并两个或多个 select 语句的结果集。注意,union 内部的 select 语句必须拥有相同数量的列,列也必须拥有相似的数据类型,同时每条 select 语句中的列的顺序必须相同。另外,默认情况下 union 操作符选取不同的值,如果想要查询重复的值需要用 union all



  • php urlencode vulnerability


    记一个 php urldecode 漏洞。php urldecode 函数文档中有提示

    Warning
    超全局变量 $_GET 和 $_REQUEST 已经被解码了。对 $_GET 或 $_REQUEST 里的元素使用 urldecode() 将会导致不可预计和危险的结果。
    


  • CIDR ip to range


    将CIDR类型ip转换为range



  • LRU go language implementation


    LRU 算法:



  • php eval webshell


    记一下php eval 一句话 webshell 的请求构造



  • handling tcp and udp services simultaneously


    从 bind 系统调用的参数来看, 一个 socket 只能与一个 socket 地址绑定, 即一个 socket 只能用来监听一个端口. 因此, 服务器如果要同时监听多个端口, 就必须创建多个 socket 并将它们分别绑定到各自端口上. 即使是同一个端口, 如果服务器要同时监听该端口上的 tcp 和 udp 请求, 也必须分别创建流 socket 和数据报 socket 并绑定到该端口上. 对此, 可以使用 i/o 复用技术来管理这些 socket



  • io multiplex application -- mini chat program


    chat_server.cpp ``` c++ #define _GNU_SOURCE 1



  • multi-process programming


    linux 多进程编程主要包括



  • nonblock connect


    阻塞 connect



  • io multiplexing


    i/o multiplexing 技术使得程序能同时监听多个文件描述符, 对提高程序的性能提高非常重要. 通常网络在下列情况下需要使用 i/o 复用技术



  • io multiplexing


    i/o multiplexing 技术使得程序能同时监听多个文件描述符, 对提高程序的性能提高非常重要. 通常网络在下列情况下需要使用 i/o 复用技术



  • five io models


    以下内容摘自: 五大 IO 模型



  • linux service program specification


    常见的服务器程序规范



  • i/o function about network programming


    和网络变成相关的 i/o 函数大致可以分文三类



  • basic api of network programming


    socket 地址 api


  • 配置多 ip 时源 ip 选择


    如果一个主机绑定多个 ip 地址(多网卡或虚拟网卡),ip 报的源 ip 选择哪个呢?



  • linux configure ip


    大部分操作系统默认是通过 dhcp(动态主机配制协议) 自动分配 ip、子网掩码、默认网关、dns 服务器 ip 等参数。客户机会使用这些参数完成个人的网络配置,进行网络通信



  • tcp 协议相关


    tcp 服务的特点

    传输层的协议主要有 tcp 和 udp。tcp 相对 udp 的特点是面向连接、字节流和可靠传输



  • ip 协议相关


    ip 协议属于 ip/tcp 协议族,它为上层协议(tcp/udp/icmp等)提供无状态,无连接,不可靠的服务



  • school wireless network test


    1. 无线局域网通信方式主要有哪几种,具体内容是什么?
      • 红外线方式:红外线局域网采用小于 1微米波长的红外线作为传输媒体,有较强的方向性,受太阳光的干扰大;支持 1~2Mbps 数据速率,适用于近距离通信
      • 基于射频方式:射频简称 RF,射频就是射频电流,它是一种高频交流变化电磁波的简称


  • mysql character set


    查看 mysql 全局的编码设置
    show variables like 'character%';
    show variables like 'collation%';
    


  • mysql 常用的用户相关操作


    创建用户
    CREATE USER 'username'@'host' IDENTIFIED BY 'password';
    或者 insert into mysql.user(Host,User,Password) values("host","user",password("password"));
    


  • upload file


    通过表单从浏览器上传文件到服务器

    upload.gtpl

    <html>
    <head>
        <title>上传文件</title>
    </head>
    <body>
    <form enctype="multipart/form-data" action="/upload" method="post">
      <input type="file" name="uploadfile" />
      <input type="hidden" name="token" value=""/>
      <input type="submit" value="upload" />
    </form>
    </body>
    </html>
    


  • web based


    用 http 包建立一个简单的 http 服务器

    go 能直接监听端口,不需要像 php 语言那样需要 nginx 或 apache 服务器。并且由于 go 语言的特性,下面这个 web server 已经支持并发了 ``` go package main



  • image processing test


    HSI 模型的特点和好处
    1. I 分量与图像的色彩信息无关,在处理彩色图像时,可仅对 I 分量进行处理,结果不改变原图像中的彩色种类
    2. H 和 S 分量与人感知颜色特征一一对应,HSI 模型完全反映了人感知颜色的基本属性,与人感知颜色的结果一一对应 HSI 模型被广泛应用于以人的视觉系统感知颜色的图像表示和处理系统中


  • network engineering review problem


    网络工程的概念

    网络工程是研究网络系统的规划,设计与管理的工程科学。要求工程技术人员根据既定的目标,严格依照行业规范,制定网络建设的方案。协助工程招投标,设计,实施,管理与维护等活动



  • network engineering review problem


    网络工程的概念

    网络工程是研究网络系统的规划,设计与管理的工程科学。要求工程技术人员根据既定的目标,严格依照行业规范,制定网络建设的方案。协助工程招投标,设计,实施,管理与维护等活动



  • go 并发


    goroutine

    goroutine 是 go 并行设计的核心。goroutine 其实就是协程,它比线程更小,十几个 goroutine 可能体现在底层就是五六个线程,可同时运行成千上万个并发任务。goroutine 比 thread 更易用、更高效、更轻便 ``` go package main



  • interface


    interface 类型定义了一组方法,如果某个对象实现了某个接口的所有方法(实现 interface 中的一个 method 即函数名,形参类型,个数,顺序,返回参数类型,个数,顺序对应),则此对象就实现了此接口。interface 可以被任意的对象实现。一个对象可以实现任意多个 interface
    类似于 struct 继承匿名字段的 method,如果一个 interface1 作为 interface2 的一个嵌入字段,那么 interface2 隐式的包含了 interface1 里面的 method



  • oop


    go 不同文件之间的引用

    同一个包里面,不同文件之间,不需要 import,直接用就好。不同包的话,需要引用包,只能使用大写字母开头的方法 ,变量等等,小写子母开头的只能包内使用。



  • func


    go 函数不接受缺省参数
    go 函数不能重载

    函数可以返回多个值
    如果没有返回值,那么就直接省略最后的返回信息。如果有返回值, 那么必须在函数的外层添加 return 语句



  • slice&map


    slice

    slice 是一个引用类型,其指向一个底层的数组。slice 是一个只有 3 个字段的数据结构:一个是指向底层数组的指针,一个是 slice 长度,一个是 slice 的容量



  • array


    array 即数组类型,数组的长度是不可变的。不同长度或不同元素类型的数组是不同类型。即 [3]int 和 [4]int 是不同的类型,[3]int 和 [3]float32 是不同的类型

    array 的声明和初始化

    ``` go package main



  • string&iota


    string

    go 中的字符串都是采用 UTF-8 字符集编码。字符串是用一对双引号(”“)或反引号(``)括起来定义,它的类型是 string



  • School Network Test


    1.S-MAC 协议

    是针对传感器网络节省能量需求设计的。S-MAC 包括了从各种能量消耗方式中节省能耗的方法。比如:空闲监听,冲突,串音和控制开销



  • School Network Test


    1.S-MAC 协议

    是针对传感器网络节省能量需求设计的。S-MAC 包括了从各种能量消耗方式中节省能耗的方法。比如:空闲监听,冲突,串音和控制开销



  • jekyll highlight


    在 jekyll 中实现代码高亮



  • Welcome to Jekyll!


    You’ll find this post in your _posts directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run jekyll serve, which launches a web server and auto-regenerates your site when a file is updated.