理解嵌入式开发中的一些硬件相关的概念做嵌入式系统开发,经常要接触硬件。做嵌入式开发对数字电路和模拟电路要有一定的了解。这样才能深入的研究下去。下面我们简单的介绍嵌入式开发中的一些硬件相关的概念。电平(Level)在数字电路中,分为高电平和低电平,分别用1和0表示。一个数字电路的管脚,总是存在一个电平的,要么高要么低,或者说要么1要到0(其实,还有另一种状态,后面会提到)。总线(Bus)在嵌入式系统中一定会有一块处理器芯片,此外,还有其它的芯片作为外部设备(
系统 2019-08-12 09:29:43 2280
对于任何程序设计语言而言,输入输出(I/O)系统是最复杂的一部分,因为通信的双方不仅仅是I/O源端和接收端,还可能是文件、网络链接或内存磁盘等,而且这些数据的数据格式多样,如字符、二进制、字节。Java通过创建大量的类库解决这个问题。12.1流(stream)的概念Java的I/O系统涉及流的概念。一个读取字节序列的对象被称为输入流,一个可以写入字节序列的对象称为输出流。输出流和输入流是相对于程序本身而言的。程序读取数据称为打开输入流,程序向其他源写入数据
系统 2019-08-12 09:29:36 2280
HDFSHadoop的核心就是HDFS与MapReduce。那么HDFS又是基于GFS的设计理念搞出来的。HDFS全称是HadoopDistributedSystem。HDFS是为以流的方式存取大文件而设计的。适用于几百MB,GB以及TB,并写一次读多次的场合。而对于低延时数据访问、大量小文件、同时写和任意的文件修改,则并不是十分适合。优点:1)适合存储非常大的文件2)适合流式数据读取,即适合“只写一次,读多次”的数据处理模式3)适合部署在廉价的机器上缺点
系统 2019-08-12 09:27:40 2280
原先搭建过一个自动化测试框架,迷迷糊糊不求甚解,算是搭建了一个仅限于能用的、根本算不上框架的玩意儿。现在回过头来好好看看究竟每一步是怎么联系起来的,是怎么运行起来的。本次博客先说说各部件都是干什么的。各部件简介:jenkins:提到jenkins就不能不提持续集成。jenkins是一个持续集成方面很好很成熟的开源软件,jenkins本身又是一个java的开源项目,提供了很多功能丰富的插件。那到底持续集成是个什么东西?整这么多专业名词一点都不接地气。说说我的
系统 2019-08-12 09:27:35 2280
msg消息队列,实线不同进程之间的通信,主要依靠key来识别:发送端1#include2#include3#include4#include5#include6#include7#include8#include9structmsgmbuf{10intmtype;11charmtext[40];
系统 2019-08-12 09:27:34 2280
SELECT*FROMOPENROWSET('Microsoft.ACE.OLEDB.12.0','Excel5.0;HDR=YES;DATABASE=C:\\Users\\kk\\Desktop\\ss.xlsx',Sheet1$)启用AdHocDistributedQueries:execsp_configure'showadvancedoptions',1reconfigureexecsp_configure'AdHocDistributedQuer
系统 2019-08-12 09:27:15 2280
(1)枚举默认为unsignedint类型,我们可以手动为枚举指定类型,如:enumAttr:char{ATTR_LV=120,};(2)我们可以使用泰勒展开式快速计算两点间距离:intfastDistance2D(int_nX1,int_nY1,int_nX2,int_nY2){//thisfunctioncomputesthedistancefrom_nX1,_nY1to_nX2,_nY2with3.5%error//firstcomputetheab
系统 2019-08-12 01:53:24 2280
play框架引入了一个简单的数据库访问层:anorm。使用anorm做模型层,代码大致如下:Scala代码caseclassDog(id:Pk[Long],name:String,age:String)objectDog{valsimple=get[Pk[Long]]("dog.id")~str("name")~int("age")map{caseid~name~age=>Dog(id,name,age)}deffindById(id:Long)=DB.w
系统 2019-08-12 01:32:23 2280
我在跑爬虫程序的时候,由于爬虫程序的等待目标服务器返回数据的时间很长,而cpu占用很低,所以经常挂着代理一跑就跑好几百个。但是爬虫程序通常是写了死循环,或直到分配给该进程的任务都跑完才退出的。如果我们想中途结束掉这些任务,是没办法手工一个一个kill掉的。那么该如何结束这些进程呢?我的方法就是在运行爬虫进程时,记录该进程的Pid,然后在需要手动结束时,再用语句kill掉它们。foriin{1..100}donohuppythonNetEase_comms_
系统 2019-09-27 17:56:59 2279
Profile和cProfile在Python标准库里面有两个模块可以用来做性能测试。1.一个是Profile,它是一个纯Python的实现,所以会慢一些,如果你需要对模块进行拓展,那么这个模块比较合适。2.第二个是cProfile,从名字就可以看出这是一个C语言的实现版,官方推荐在大多数情况下使用。这两者的接口和数据的输出格式是完全一样的,你可以在这两者之间自由的切换,所以下面我们仅以cProfile为例进行介绍。使用cProfile进行性能测试在cPr
系统 2019-09-27 17:56:50 2279