六、 端口扫描基础 虽然 Nmap 这些年来功能越来越多, 它也是从一个高效的端口扫描器开始的,并且那仍然是它 的核心功能。 nmap target 这个简单的命令扫描主机 target 上的超过 1660 个 TCP 端口。 。 许多传统的端口扫描器只列出所有端口是开放还是关闭的, Nmap 的信息粒度比它们要细得多 它把端口分成六个状态: open(开放的), closed(关闭的),filt
在第五章中,我们详细地讨论了 [[Prototype]] 机制,和 为什么 对于描述“类”或“继承”来说它是那么使人糊涂和不合适。我们一路跋涉,不仅涉及了相当繁冗的语法(使代码凌乱的 .prototype),还有各种陷阱(比如使人吃惊的 .constructor 解析和难看的假想多态语法)。我们探索了许多人试图用抹平这些粗糙的区域而使用的各种“mixin”方法。 这时一个常见的反应是,想知道为什么
是时候讨论一下Go的函数定义了。 什么是函数 函数,简单来讲就是一段将输入数据转换为输出数据的公用代码块。当然有的时候函数的返回值为空,那么就是说输出数据为空。而真正的处理过程在函数内部已经完成了。 想一想我们为什么需要函数,最直接的需求就是代码中有太多的重复代码了,为了代码的可读性和可维护性,将这些重复代码重构为函数也是必要的。 函数定义 先看一个例子 package main import (
在上一章,我们学习了深度神经网络通常比浅层神经网络更加难以训练。我们有理由相信,若是可以训练深度网络,则能够获得比浅层网络更加强大的能力,但是现实很残酷。从上一章我们可以看到很多不利的消息,但是这些困难不能阻止我们使用深度神经网络。本章,我们将给出可以用来训练深度神经网络的技术,并在实战中应用它们。同样我们也会从更加广阔的视角来看神经网络,简要地回顾近期有关深度神经网络在图像识别、语音识别和其他应
C提供了4种用于动态内存分配的函数: malloc,它接受表示字节单位的大小的整数,返回指向新分配的、(至少)为指定大小的内存块的指针。如果不能满足要求,它会返回特殊的值为NULL的指针。 calloc,它和malloc一样,除了它会清空新分配的空间。也就是说,它会设置块中所有字节为0。 free,它接受指向之前分配的内存块的指针,并会释放它。也就是说,使这块空间可用于未来的分配。 realloc
本章将介绍一个 Web 搜索引擎,我们将在本书其余部分开发它。我描述了搜索引擎的元素,并介绍了第一个应用程序,一个从维基百科下载和解析页面的 Web 爬行器。本章还介绍了深度优先搜索的递归实现,以及迭代实现,它使用 JavaDeque实现“后入先出”的栈。 6.1 搜索引擎 网络搜索引擎,像谷歌搜索或 Bing,接受一组“检索项”,并返回一个网页列表,它们和这些项相关(之后我将讨论“相关”是什么意
Go 的标准库提供了很多工具,可以处理文件系统中的文件、构造和解析文件名等。 处理文件的第一步是确定要处理的文件的名字。Go 将文件名表示为简单的字符串,提供了 path、filepath 等库来操作文件名或路径。用 os 中 File 结构的 Readdir 可以列出一个目录中的内容。 可以用 os.Stat 或 os.Lstat 来检查文件的一些特性,如权限、大小等。 有时需要创建草稿文件来保
这一课中我们来看一看如何在三维场景中对场景中的物体进行各式各样的变换,并且在保持场景的立体感的情况下将其渲染到屏幕上去!常见的方法是用矩阵表示每一个变换, 之后将它们挨个儿相乘,最后乘以顶点位置产生最后的结果!接下来的每一章都将着重介绍一种转变。 这一课中我们先来看一个平移变换,平移变换的任务的将一个对象沿着一个任意长度和方向的向量移动,我们假设你想将下图中左边的三角形移到右边的位置: 要实现这个
前 言 Linux 下的进程通信(IPC) POSIX 无名信号量 System V 信号量 System V 消息队列 System V 共享内存 1.POSIX 无名信号量 如果你学习过操作系统,那么肯定熟悉PV 操作了.PV 操作是原子操作.也就是操作是不 可以中断的,在一定的时间内,只能够有一个进程的代码在 CPU 上面执行.在系统当中,有时候为了顺利的使用和保护共享资源,大家提出了信号的
官方网站 Docker 官方主页:https://www.docker.com Docker 官方博客:https://blog.docker.com/ Docker 官方文档:https://docs.docker.com/ Docker Hub:https://hub.docker.com Docker 的源代码仓库:https://github.com/moby/moby Docker 发布
导语 这一节讲述UDP编程的知识。UDP(UserDatagram Protocol即用户数据报协议)是一个轻量级的,不可靠的,面向数据报的无连接协议。对于UDP我们不再进行过多介绍,如果你对UDP不是很了解,而且不知道它有什么用,那么这里就举个简单的例子:我们现在几乎每个人都使用的腾讯QQ,其聊天时就是使用UDP协议进行消息发送的。就像QQ那样,当有很多用户,发送的大部分都是短消息,要求能及时响
GF中使用自定义模板引擎,本章节将为您讲述GF模板引擎语法。
6.1 数据结构(Data Structure) 正如在现实世界中一样,直到我们拥有足够多的东西,才迫切需要一个储存东西的容器,这也是我坚持把数据结构放在后面的原因一一直到你掌握足够多的技能,可以创造更多的数据,你才会重视数据结构的作用。这些储存大量数据的容器,在 Python 称之为内置数据结构(Built-in Data Structure)。 我们日常使用的网站、移动应用,甚至是手机短信都依
作者:这一章内容不属于jME3入门必须弄懂的知识,如果你对jME3的材质系统工作原理感兴趣可以继续往下阅读,直接跳过下方内容也不影响开发。 但我建议至少读完“材质实例:j3m文件”,因为这会帮助你理解jME3 SDK中的材质编辑器的作用,并且在一定程度上减少编写Java代码的工作量, jME3的材质系统定义了2种文件格式:j3md和j3m。j3md来关联材质所使用的着色器程序,充当Java代码与S
实验六:系统调用 实验之前 阅读实验指导五、六。 实验题目 原理:使用条件变量之后,分别从线程和操作系统的角度而言读取字符的系统调用是阻塞的还是非阻塞的?Click to show 对于线程而言,是阻塞的,因为在等待有效输入之前线程都会暂停。但对于操作系统而言,等待输入的时间完全分配给了其他线程,所以对于操作系统来说是非阻塞的。 设计:如果要让用户线程能够使用 Vec 等,需要做哪些工作?如果要让