tcp connect() 这种方式最简单。直接与被扫描的端口建立tcp链接,如果成功,则说明端口开放,如果不成功则说明端口关闭的。这种扫描的特点是与被扫描端口建立完成的tcp链接,完整的tcp三次握手。优点主要是不需要root权限即可扫描端口。因为connect可以在用户态直接调用 TCP SYN ...
分类:
其他好文 时间:
2019-11-13 15:55:54
阅读次数:
83
%user %user表示CPU一共花了多少比例的时间运行在用户态空间或者说是用户进程(running user space processes) 典型的用户态空间程序有:Shells、数据库、web服务器…… %nice %nice表示改变过优先级的进程所占用CPU的百分比 当使用top或者ps命 ...
分类:
其他好文 时间:
2019-11-04 15:26:12
阅读次数:
101
一、协程介绍 协程:是单线程下的并发,又称微线程,纤程。英文名Coroutine。一句话说明什么是线程:协程是一种用户态的轻量级线程,即协程是由用户程序自己控制调度的。 协程相比于线程,最大的区别在于,协程不需要像线程那样来回的中断切换,也不需要线程的锁机制,因为线程中断或者锁机制都会对性能问题造成 ...
分类:
编程语言 时间:
2019-10-31 23:54:18
阅读次数:
164
linux系统架构 特权级的概念 对于任何操作系统来说,创建一个进程是核心功能。创建进程要做很多工作,会消耗很多物理资源。比如分配物理内存,父子进程拷贝信息,拷贝设置页目录页表等等,这些工作得由特定的进程去做,所以就有了特权级别的概念。最关键的工作必须交给特权级最高的进程去执行,这样可以做到集中管理 ...
分类:
其他好文 时间:
2019-10-27 14:52:01
阅读次数:
84
前面一篇文章介绍了Linux内的同步互斥的概念、内核态和用户态Linux提供的同步/互斥接口。这里本文介绍下如何给协程加上同步、互斥机制。简单说下协程coroutine:参考文章操作系统的课本中对进程、线程的定义:进程是最小的资源分配单位,线程是最小的调度单位。随着互联网的飞速发展,互联网后台Ser... ...
分类:
其他好文 时间:
2019-10-21 13:17:59
阅读次数:
365
在jdk1.6之前,Monitor的实现完全是一句操作系统内部的互斥来实现的,当线程被挂起的时候,需要从用户态切换到内核,是重量级的操作 在1.6之后,对synchronized进行了优化操作, JVM提供了三种不同的 Monitor 实现,也就是三种不同的锁: 偏向锁 轻量级锁 重量级锁 JVM根 ...
分类:
其他好文 时间:
2019-10-11 01:16:44
阅读次数:
82
一些概念: 1.内存管理主要是管理缓存/主存/磁盘/磁带等存储介质锁形成的内存框架。 2.虚拟内存:即将物理内存(缓存和主存)扩充到外部存储介质(磁盘/光盘/磁带)上。这样内存的空间就大大的增加了。 3.中断的基本原理是:设备在完成自己的任务后向CPU发出中断,CPU判断优先级,然后确定是否响应。如 ...
分类:
其他好文 时间:
2019-10-10 15:45:57
阅读次数:
117
我们可以利用synchronized关键字来对程序进行加锁。它既可以用来声明一个synchronized代码块,也可以直接标记静态方法或者实例方法。 synchronized怎么实现线程的同步? 早期的synchronized属于重量级锁,依赖于mutex lock实现,线程之间的切换涉及到 用户态 ...
分类:
其他好文 时间:
2019-10-04 19:02:50
阅读次数:
69
协程:单线程下的并发,又称为微线程,纤程。一句话说明什么是协程:协程是一种用户态的轻量级线程,即协程是由用户程序自己控制调度的。 协程是基于单线程实现并发,即只用一个主线程(cpu只用一个),为实现并发,先认识并发本质(切换+保存状态) cpu正在运行一个任务,会在两种情况下切走去执行其他的任务(切 ...
分类:
其他好文 时间:
2019-10-04 00:04:09
阅读次数:
86