4 leason-love

尚未进行身份认证

工程师

等级
TA的排名 2w+

操作系统CPU调度

概述多道程序操作系统的基础。通过在进程之间切换CPU,操作系统可以提高计算机的吞吐率。对于单处理器系统,每次只允许一个进程运行:任何其他进程必须等待,直到CPU空闲能被调度为止。CPU按一定的调度算法从就绪队列中选择一个进程,把CPU的使用权交给被选中的进程,如果没有就绪进程,系统会安排一个系统空闲进程或系统空闲进程。调度触发事件:创建、唤醒、退出等进程控制操作进程等待I/O,I/O中断

2018-01-04 17:19:31

操作系统进程

概述一个进程就是一个正在运行的程序。它包括:程序的代码,既然进程是一个正在运行的程序,自然需要程序的代码程序的数据CPU寄存器的值,包括通用寄存器,程序计数器堆(heap)是用来保存进程运行时动态分配的内存空间栈(stack)有两个用途,1保存运行的上下文信息。2在函数调用时保存被调用函数的形参或者局部变量进程所占用的一组系统资源,如打开的文件进程状态。包括:创建:进程正在被创建

2017-12-28 11:36:22

计算机浮点数规格化表示

说明在IEEE标准中,浮点数在内存中的表示是将特定长度的连续字节的所有二进制位按特定长度划分为符号域,指数域和尾数域三个连续域。floatfloat类型在内存中占用的位数为:1+8+23=32bitsdouble1+11+52=64bits第一位s代表符号为,1代表负数,0代表正数。第二个域是指数域,对于单精度float类型,指数域有8位,可以表示 0-255个指数值。指数值规定了小数点

2017-12-27 17:48:37

操作系统线程

概述线程是CPU使用的基本单元,他由线程ID。程序计数器,寄存器集合和栈组成,与属于同一进程共享代码段,数据段及其他操作系统资源(如打开文件和信号)。线程是进程中的一个实体,是调度的基本单位。线程自身基本上不拥有系统资源,只拥有少许运行中必不可少的私有资源。线程可与同属一个进程的其他线程共享进程的全部资源。多线程是指在一个进程中可以执行多个线程的能力。传统的操作系统使用的是单线程方式。UNIX支持多

2017-12-27 17:46:12

golang开发环境安装

准备工作golang安装官网https://golang.org/dl/下载需要的安装包,我使用的go1.9.2.windows-amd64.zipGolandidea安装官网https://www.jetbrains.com/go/下载然后安装语言环境安装go的过程中,要注意有两个概念:GOPATH和GOROOT。GOROOT”表示GO在你电脑上的安装位置,这个一般在安装时,程

2017-12-16 16:25:30

Python属性函数property

说明Python中的property被称为属性函数,它可以将类方法转换为只读属性,重新实现一个属性的setter和getter方法将类方法准换成只读属性正常情况下使用装饰器形式@property使用如:classTest(object):def__init__(self,a,b):"""Constructor"""self.a=a

2017-12-11 16:13:01

Python设计模式--修饰器模式

说明修饰器的定义为动态地给一个对象添加一些额外的职责。在Python中Decoratormode可以按照像其它编程语言如C++,Java等的样子来实现,但是Python在应用装饰概念方面的能力上远不止于此,Python提供了一个语法和一个编程特性来加强这方面的功能。即装饰器:defdec(fn):returnfn@decdeffun():pass简单例子需要在某个原有功

2017-12-08 14:16:25

Python文件操作os,shutil模块

说明os模块提供了非常丰富的方法用来处理文件和目录常用OS模块方法OS模块os.getcwd()–得到当前工作的目录os.remove()–删除指定文件os.rmdir()–删除指定目录(空目录)os.mkdir()–创建目录os.makedirs()–递归创建目录os.path.isfile()–判断指定对象是否为文件。是返回True,否则Falseos.p

2017-12-08 14:14:55

模运算系统和补码表示

模运算系统和补码,表8位二进制加法器模运算系统计算01111111-01000000=?就等于:01111111+(2^位数-01000000)01111111+(2^8-01000000)其中一个负数的补码等于将对应正数补码,各位取反末尾加一得到:01111111+11000000即:100111111只留余数去掉最高位:00111111特殊数的补

2017-11-30 15:07:36

关于HTTPS原理了解

说明HTTPS=HTTP+加密+认证+完整性保护,HTTPS也就是HTTP加上加密处理、认证以及完整性保护。HTTPS并非是应用层的一种新协议。只是HTTP通信接口部分用SSL(SecureSocketLayer)和TLS(TransportLayerSecurity)协议代替而已。通常,HTTP直接和TCP通信。当使用SSL时,则演变成先和SS

2017-11-30 15:05:30

HTTP状态码及首部

说明HTTP状态码负责表示HTTP请求的返回结果,标记服务端处理是否正常,通知出现的错误等等。\范围类别短语1XX100-101信息性状态码接受的请求正在处理2XX200-206成功性状态码请求正常处理完毕3XX300-305重定向状态码需要进行附加操作才能完成请求4XX400-415客户

2017-11-28 16:49:29

Python设计模式--适配器模式

说明所谓适配器模式是指是一种接口适配技术,它可通过某个类来使用另一个接口与之不兼容的类,将一个类的借口转换成客户希望的另一个接口,Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。简单实现classObj(object):defmethod(self):print'obj'classObj2(object):defnew_me

2017-11-21 11:58:41

Python垃圾回收机制

Python的GC模块主要运用了“引用计数”(referencecounting)来跟踪和回收垃圾。在引用计数的基础上,还可以通过“标记-清除”(markandsweep)解决容器对象可能产生的循环引用的问题。通过“分代回收”(generationcollection)以空间换取时间来进一步提高垃圾回收的效率。一、引用计数在Python中,大多数对象的生命周期都是通过对象的

2017-11-17 11:11:10

Python设计模式--建造者模式

说明将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。我们想要创建一个由多个部分构成的对象,而且它的构成需要一步接一步地完成。只有当各个部分都创建好,这个对象才算是完整的。这正是建造者设计模式(Builderdesignpattern)的用武之地。建造者模式将一个复杂对象的构造过程与其表现分离,这样,同一个构造过程可用于创建多个不同的表现。一般实现抽象class

2017-11-15 17:32:05

Python设计模式--工厂模式

说明工厂模式是一个在软件开发中用来创建对象的设计模式。工厂模式包涵一个超类。这个超类提供一个抽象化的接口来创建一个特定类型的对象,而不是决定哪个对象可以被创建。为了实现此方法,需要创建一个工厂类创建并返回。当程序运行输入一个“类型”的时候,需要创建于此相应的对象。这就用到了工厂模式。在如此情形中,实现代码基于工厂模式,可以达到可扩展,可维护的代码。当增加一个新的类型,不在需要修改已存在的类,只增加

2017-11-15 17:03:16

Python并发concurrent.futures和asyncio

Python标准库为我们提供了threading和multiprocessing模块编写相应的多线程/多进程代码。从Python3.2开始,标准库为我们提供了concurrent.futures模块,concurrent.futures模块的主要特色是ThreadPoolExecutor和ProcessPoolExecutor类,这两个类实现的接口能分别在不同的线程或进程中执行可调

2017-11-13 11:29:58

Python设计模式--策略模式

说明Python设计模式和广为人知的java设计模式是有区别的,通过Python的一些语言特性,可以简化很多设计模式。例如策略模式,利用作为一等对象的函数,使用函数可以有效减少代码行数。例子:处理订单折扣电商领域有个功能明显可以使用“策略”模式,即根据客户的属性或订单中的商品计算折扣。假如一个网店制定了下述折扣规则。-有1000或以上积分的顾客,每个订单享5%折扣。-同一订单

2017-11-07 21:07:48

MYSQL性能优化的最佳20+条经验

今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1.为

2017-11-06 11:17:54

Python字典集合数据结构深入理解

说明在python中字dict和set是非常常用的两种数据结构,但是两种数据结构为什么要放在一起讨论。因为他们之所以拥有非常快的速度,是因为他们的内部结构都是散列表(散列表其实是一个稀疏数组总是有空白元素的数组称为稀疏数组)dict中的散列表散列表算法正常想要获取dict中的值,首先要知道key通过dict[key]获取对应的value,在散列表中为了达到这种操作,首先会计算key的hash值即

2017-11-02 20:49:28

前端开发接口模拟小工具

mock-leason简单node服务器,在前后端分离开发中,模拟HTTP接口数据和静态资源服务器,方便前端调试开发。前后端开发协作的过程中,为了不依赖于后端环境,我们常常会和后端童鞋定好接口,然后采用前后端分离的开发模式。为了提高前后端开发效率,前端需要自行mock数据,前端开发接口模拟小工具

2017-11-02 09:22:35

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!