- 博客(37)
- 资源 (4)
- 收藏
- 关注
原创 eric6安装插件cx-freeze的问题
还是Python3.6 pyqt5.8 eric6,安装一个python to exe的工具cx-freeze,然后想在eric6上安装下插件方便操作。一直在插件状态信息中提示: "The cxfreeze.bat executable could not be found." "Did you run the cxfreez
2017-05-24 14:26:57
1302
原创 pyqt5.8.2没有qt Designer和assistant exe的问题
最近在折腾python3.6 pyqt5.8 eric6.发现通过pip install PyQt5安装的程序,缺少可执行文件各个版本都试过,python3.6 pyqt5.7和5.8之后的真的没有。https://stackoverflow.com/questions/41523597/python-win-3-6-0-x64-issue-missing-qt-designer-e
2017-05-24 14:18:10
4889
原创 单反拍摄技巧:利用直方图曝光
曝光补偿的概念已被越来越多的摄友们所认识,但却常常因为不知道该增加或者减少多少曝光量而苦恼? 就算你已经学会了使用包围曝光,也知道了“亮加暗减”的原则,并在实践中已经使用,但判断的依据是什么?判断的依据就是你相机里的直方图。 一、用什么来判断曝光? 答案是——直方图。 直方图的横坐标代表像素的亮度,左暗右亮。很多相机厂商将直方图从左到右分成“很暗”、“较暗”、“较亮”、“很亮”四个区域,也有的相机厂商将直方图分为五个区域。这些分区与直方图本身并没有关系,也不会影响到直方图的形成。无论四个分区还
2010-07-27 20:01:00
3456
原创 单反拍摄技巧:拍摄参数参考
1、拍静止的小东西的特写,如花、鸟、虫: 用Av档,光圈最好在f5.6或以下,焦距最好50以上,尽量在1m以内拍摄,使背景虚化!光线好的话,iso100,光线不好的话,iso最好400以内。2、拍人: 基本都是使用较大的光圈(f5.6以内)、50mm以上的焦距,拍摄距离视全身、半身、大头照而定,使背景虚化,使用Av档!光线好,iso100,光线不好,iso400以内。运动中的人使用追拍,体现运动感(详见下面的运动物体的拍摄)!3、拍景:
2010-07-27 11:19:00
1345
原创 单反拍摄技巧:简单构图
如果你不知道该如何构思一幅照片,这里有10个技巧帮助你提升照片构图。你可以从这里任何一个技巧开始学习。 奇数法则 “奇数法则”是指,在一幅照片中保持主体个数为奇数。一幅照片的主体可以是一个物体或三个人的小团体。这个技巧会使照片更加引人注意,也更符合人眼的审美。 这幅四个草莓的照片显得非常平淡无奇。在这幅照片上很难找到兴趣点。 一幅类似的但只有3个草莓的照片。虽然这幅照片与上一幅非常类似,但奇数草莓使照片变得生动有趣多了。 突出主体 突出主体是一个简单的吸
2010-07-26 22:15:00
1558
原创 socket=0的异常分析
首先看一下函数socket的定义: int socket ( int domain, /* address family (for example, AF_INET) */ int type, /* SOCK_STREAM, SOCK_DGRAM, or SOCK_RAW */ int protocol
2010-07-23 10:29:00
2066
3
原创 ubuntu 软件管理apt使用
主要配置文件 /etc/apt/sources.list 这是APT最重要的配置文件,该文件记载了软件仓库服务器的地址等信息。 apt主要命令 1.apt-get update 更新本地apt-get的本地数据库,使其与服务器的pkglist文件同步。在升级以前一般都要执行本命令实现与服务器的一致。 2.apt-get check 验证本地系统的完整性。 3.apt-get dist-upgrade 类似于apt-get,但是将安装
2010-07-23 10:23:00
861
原创 vmware+ubuntu无法找到eth0
在Vmware装了Ubuntu 7.10 Server,今天在启动的时候,发现找不到网卡eth0。 在输入ifconfig –a的时候,也没有任何Ethnet的信息,而输入eth0 down 的时候,提示我no device found(设备没法找到)。 我检查了VMware的EtherNET配置的时候,仍旧是NAT网络设置,和我原来的一样。 1: #ifconfig –a 2: lo Link encap:Local Loopbac
2010-07-23 10:18:00
3977
2
原创 性能优化:优化程序启动性能
综合上面的文章《影响程序启动性能的因素》,我们可以知道,程序在启动过程中,几个因素容易形成瓶颈: 源代码效率低下或者处理不当 动态链接库的加载和调用 配置文件/资源文件的访问 所以,优化程序的启动过程,也主要是对这些步骤进行优化。 减少动态链接库的数量 (1)修改代码,分离依赖的函数,加入到其他动态链接库中。 (2)合并动态链接库,将多个小的动态库合并成大的库。 减小动态链接库的尺寸 (1)优化编译选项 (2)清楚冗余代码 优化可执行文件和库
2010-07-21 19:17:00
693
原创 性能优化:影响程序启动性能的因素
程序启动性能定义为程序启动所需要的的时间。从用户的角度看,即指从用户启动程序到可以使用该程序的这一段时间。 程序启动性能是应用程序易用性的一个重要指标,是用户对应用程序的第一印象,直接影响用户对该程序的评价。 程序在第一次启动时,系统要载入大量的资源,引起大量的IO操作;而在第二次启动时,由于系统的缓冲机制起作用,可以减少IO操作。从而导致第二次启动比第一次启动要快很多。 第一次启动,我们称为“冷启动”,冷启动存在大量的IO消耗,所以启动时间取决于IO操作的消耗时间; 第二次启动,我们
2010-07-21 16:37:00
1004
原创 性能优化:C++语言瓶颈
一味地将性能问题归咎于编程语言问题是不科学也不负责的。 C++的一些语言特性比其它语言更容易形成性能的瓶颈,作为优秀的程序员,应当了解并避免这些瓶颈,一个程序的性能问题到底有多少是取决于使用的语言?使用汇编就一定比使用C++效率高吗? 因此,遇到性能问题,首先应检查和反思程序的总体架构,然后用性能检测工具进行准确测量,再针对瓶颈进行分析和优化,这才是正确思路。 不可否认的是,C++比其它语言更容易产生瓶颈: 缺页导致的外部存储调用,引起IO消耗瓶颈。 动态内存申请和释放。在C/C++中,
2010-07-21 14:05:00
1350
2
原创 ubuntu网络配置
临时配置ip ifconfig eth0 192.168.1.10 netmask 255.0.0.0 静态配置ip ubuntu的网络配置信息放在 /etc/network/interfaces 中, 如果配置动态获取ip,则在上述文件中加入以下内容: auto eth0 iface eth0 inet dhcp 如果配置静态ip,则添加如下内容: auto eth0 iface eth0 inet s
2010-07-20 10:48:00
466
原创 ubuntu安装tftpserver
安装相关软件包:tftpd ftp xinetd $sudo apt-get install tftpd tftp xinetd 建立tftp服务文件目录并且更改其权限 $cd / $sudo mkdir tftpboot $sudo chmod 777 tftpboot -R 修改/etc/inetd.conf配置文件中tftp专用目录的地址 $sudo vim /etc/inetd.conf 将如下内容 ## sane-
2010-07-20 10:46:00
986
原创 单反拍摄技巧:常用拍摄技巧汇总
一、光圈优先与快门优先的使用 光圈优先大多用在拍人像以及风景时 光圈优先就是手动定义光圈的大小,相机会根据这个光圈值确定快门速度。由于光圈的大小直接影响着景深,因此在平常的拍摄中此模式使用最为广泛。在拍摄人像时,我一般采用大光圈长焦距而达到虚化背景获取较浅景深的作用,这样可以突出主体。同时较大的光圈,也能得到较快的快门值,从而提高手持拍摄的稳定。在拍摄风景这一类的照片时,我往往采用较小的光圈,这样景深的范围比较广,可以使远处和近处的景物都清晰,同样这一点在拍摄夜景时也适用。
2010-07-17 15:15:00
1353
原创 单反拍摄技巧:发挥镜头最佳效果
即便再出色的镜头,在不懂得如何使用的人手中都无法展现出真正的实力,如果你经常对自己的镜头感到不满,也许下面7个基本常识可以帮助你更恰当地使用镜头,而不是沦为一个只想着“要是我有那支镜头一定能拍出好照片”的可怜虫。 1.尽量使用遮光罩,强光下拍摄时,避免光源或强烈的反射光进入构图。 2.尽量避免使用最大光圈,缩小2档光圈将大大降低像差,提高画质。 3.尽量使用颗粒细腻的胶卷,数码相机选择不超过200的ISO值。 4.尽量避免拍摄过近的对焦距离,一
2010-07-13 15:25:00
905
原创 单反拍摄技巧:适当使用手动调焦
在多数情况下,自动对焦无疑有着极大的好处,但在某些时候,使用手动对焦才是更明智的选择。在下面列举的一些情况下,自动对焦并不能总是很好地工作,此时就该把对焦键拨到M档,然后手动调节对焦坏。别忘了,切换手动对焦还可以起到对焦锁的作用,有时可以利用这一原理,先对某一物体对焦,然后再进行构图,只要拍摄相同距离上的物体,就不需要再对焦了。 1.杂乱的场景 当拍摄场景中充满成百上千个元素时——而且每一个元素都有大量细节——手动对焦就是必不可少的。特别是当被摄体比较小,或者不具有特定的形状、大小、色彩或明暗时。
2010-07-13 15:15:00
2381
原创 单反拍摄技巧:人像拍摄
让你的照片具备一个鲜明清晰的主题,(是人、是静物还是一件事?)你需要清晰的表达出来,而不是模棱两可或面面俱到。 一幅好照片必须把注意力引向被摄主体,你需要观众一下子注意到你的主体,因为这个主体是你要表达的核心。 让你的照片更简洁,那些不能烘托你主体、甚至分散注意力的元素要统统压缩或排除。 让肖像不变形的简单方法,是离被摄人物站位尽量保持距离,尽量不用广角镜。 获得浅景深(让主体背景模糊)的方法是尽量使用大光圈,长焦距,(如果有条件),让人物站位离背景尽量远。 让
2010-07-11 13:02:00
1607
原创 单反基础知识:光圈和快门
照片的好坏与曝光量有关,也就是说应该通多少的光线使ccd能够得到清晰的图像。 曝光量与通光时间(快门速度决定),通光面积(光圈大小决定)有关。那么,为了得到正确的曝光量,就需要正确的快门与光圈的组合: 快门快时,光圈就要大些; 快门慢时,光圈就要小些。 快门优先是指由机器自动测光系统计算出曝光量的值,然后根据你选定的快门速度自动决定用多大的光圈。 光圈优先是指由机器自动测光系统计算出暴光量的值,然后根据你选定的光圈大小自动决定用多少的快门。 手动模式是
2010-07-11 12:20:00
1187
原创 单反基础知识:直方图
直方图(柱形图)就是通过在LCD上显示出来的曝光量柱形图来确定照片曝光量大小的工具,通过直方图的横轴和纵轴我们可以直观地来看出拍摄的照片曝光情况,在拍摄时能给摄影者带来很大的方便。 相对于现有数码相机的像素,作为回看或取景用的LCD液晶屏往往只有十几万像素,而且显示尺寸也不大。因此,要在这个小小的LCD液晶屏一般都不能完全表现出所拍照片的细节效果。在很多时候拍摄的照片即使曝光量不准确,也很难在LCD反映出来,数码相机内置的曝光量柱形图,就给摄影者查看曝光是否准确的提供了一个好办法。直方图中的坐标图形就是数
2010-07-11 11:42:00
2448
原创 单反基础知识:“歧义“的速度概念
“速度”一词本是描述物体运动的方向和位置变化快慢的物理量,速度只能说明物体的运动状态而不是其它。上面提到的三个“速度”, 其真实含义都不是分别描述镜头、快门和胶片的运动状态的,其实际含义是表示镜头、快门、胶片本身具有的技术特征。 “镜头速度”,实际上是表示镜头最大相对口径的大小,只是某种镜头的一个特征定义。所谓“高速镜头”,就是指:相对口径比较大的镜头,也就是最大光圈的系数较小的镜头,如F1.4、F2.8等等。无论如何大家都不会从字面上理解,因此绝不会认为“镜头速度”就是指镜头运动的快慢。
2010-07-11 11:24:00
598
原创 编译和链接
编译器的工作不单单只有编译,事实上,它包括了从高级语言到机器语言的完整过程: 预编译-》编译-》汇编-》链接。 预编译 预编译过程主要是处理源代码文件中以#开始的预编译指令。主要处理规则如下: 1.1.将所有#define删除,并展开所有的宏定义。 1.2.处理所有条件编译指令,比如#ifdef、#else等。 1.3.处理#include,递归的将被包含的文件出入到该指令的位置。 1.4.删除所有注释。 1.5.添加行号
2010-07-09 15:42:00
476
原创 数据的传递:TCP传输策略
TCP数据流分类 基于TCP的各类解决方案,可以根据数据吞吐量来大致分成两大类: (1)交互数据类型,例如telnet,ssh,这种类型的协议在大多数情况下只是做小流量的数据交换,比如说按一下键盘,回显一些文字等等。 (2)数据成块类型,例如ftp,这种类型的协议要求TCP能尽量的运载数据,把数据的吞吐量做到最大,并尽可能的提高效率。 针对这两种情况,TCP给出了两种不同的策略来进行数据传输。 TCP的交互数据流 通常,在网络速度很快的情况下,比如用lo接口进行telnet通信,当按下
2010-07-09 09:26:00
730
原创 数据的传递:TCP的建立和关闭
TCP连接的建立 TCP使用三次握手( three-way handshake )协议来建立连接。三次握手协议可以完成两个重要功能:它确保连接双方做好传输准备,并使双方统一了初始顺序号。 这三次握手为: 1.请求端(通常称为客户)发送一个 SYN 报文段( SYN 为 1 )指明客户打算连接的服务器的端口,以及初始顺序号( ISN )。 2.服务器发回包含服务器的初始顺序号的 SYN 报文段( SYN 为 1 )作为应答。同时,将确认号设置为客户的 ISN 加 1 以对客户的 SYN
2010-07-09 09:21:00
371
原创 数据的传递:TCP/UDP数据格式
什么是多路复用?什么是多路分解? UDP和TCP最基本的任务是,将两个端系统间IP的交付服务扩展为运行在两个端系统上的进程之间的交付服务。将运输层报文段中的数据交付到正确的套接字,被称为多路分解;从源主机的不同套接字收集数据块,并为每个数据块封装上首部信息从而生成报文段,然后将报文段传递到网络层,这一工作被称为多路复用。 多路复用/多路分解的实现 多路复用的要求: 1.套接字有唯一的标示符; 2.每个报文段有特殊字段来指示该报文段要交付的套接字。 UDP套接字是由一组二元组来标示报文段
2010-07-09 09:19:00
1381
原创 数据的传递:IP选路
为什么要进行IP选路? IP选路的必要性 由于Internet是由许多不同的物理网络连接而成的,加入Internet的计算机在与其他入网计算机通信时,发送信息的源计算机可能与接收信息的目的计算机在同一个物理网络中;也可能不在同一个物理网络(如以太网)中。为了实现IP数据包从源地址到目的地址的传送,需要针对不同情况进行IP数据报转发路径的选择。 什么是IP选路? 在TCP/IP系统中,选路(Routing)是指在网络中选择一条用于传送IP数据包路径的过程。路由器(Router)是承担选路任
2010-07-08 20:05:00
1549
原创 网络协议:IGMP详解
什么是IGMP? IGMP 是Internet Group Management Protocol(互联网组管理协议)的简称。它是TCP/IP 协议族中负责IP 组播成员管理的协议,用来在IP 主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。 IGMP主要功能 当一台主机加入到一个新的组时,它发送一个IGMP消息到组地址以宣告它的成员身份,多播路由器和交换机就可以从中学习到组的成员。利用从IGMP中获取到的信息,路由器和交换机在每个接口上维护一个多播组成员的列表。 IGMP报文格式和分类
2010-07-08 20:00:00
2492
原创 网络协议:ICMP详解
什么是ICMP? ICMP是“InternetControlMessageProtocol”(Internet控制消息协议)的缩写。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。 ICMP主要功能 从技术教度来说,ICMP就是一个“错误侦测与回报机制”,其目的就是让我们能够检测网路的连线状况,也能确保连线的准确性。 其功能主要有
2010-07-08 19:59:00
622
原创 网络协议:ARP RARP详解
一、ARP协议简介 ARP,全称Address Resolution Protocol,中文名为地址解析协议,它工作在数据链路层,在本层和硬件接口联系,同时对上层提供服务。 IP数据包常通过以太网发送,以太网设备并不识别32位IP地址,它们是以48位以太网地址传输以太网数据包。因此,必须把IP目的地址转换成以太网目的地址。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。ARP协议用于将网络中的IP地址解
2010-07-08 19:57:00
740
原创 IP地址分类
IP地址有5类:A类到E类。这些地址可以通过其引导位进行区分。 A类:其设为0的引导位,一个7位网络编号!126个A类网络,一个网络16777214主机! B类:其设为10的引导位,14位网络号!16382个B类网络,一个网络65534台主机! C类:其设为110的引导位,21位网络号!2097152个C类网络,一个网络254台主机! D类:其设为1110的引导位,28位组播ID!D类用做组播地址! E类:其设为11110的引导位,预留IP地址! A类:001.hhh.hh
2010-07-08 19:53:00
465
原创 Linux内核设计与实现
通过这几天的努力,我终于把《Linux内核设计与实现》这本书的内容做成了脑图,并把重要概念都建了链接放到了百度空间。 在这里要特别感谢亲爱的娜娜,没有她的鼓励,这份读书笔记只能是在纸上写写画画,恐怕成不了网络资源。 Linux内核设计与实现脑图链接 网页出来比较慢,需要等候一会儿才能播放。
2010-07-08 19:40:00
630
原创 Linux中断处理过程
如图所示,完整的中断系统由两部分组成:硬件电路和软件处理。 硬件处理的一般过程: 1.硬件电路产生IRQ信号。 2.可编程中断控制控制器(PIC)收集IRQn值,转换成相应的向量。 3.PIC将中断向量由INT发送到CPU,进入软件中断处理。 软件处理的一般过程: 1.初始化阶段向linux内核注册中断处理程序。 2.中断发生时,通过中断描述符表IDT获取中断服务例程(ISR)链表入口。 3.调用do_irq()程序,获取actio
2010-07-08 19:32:00
470
原创 什么是中断?什么是异常?
Linux 内核需要对连接到计算机上的所有硬件设备进行管理,毫无疑问这是它的份内事。如果要管理这些设备,首先得和它们互相通信才行,一般有两种方案可实现这种功能: 1.轮询(polling) 让内核定期对设备的状态进行查询,然后做出相应的处理; 2.中断(interrupt) 让硬件在需要的时候向内核发出信号(变内核主动为硬件主动)。 第一种方案会让内核做不少的无用功,因为轮询总会周期性的重复执行,大量地耗用 CPU 时间,因此效率及其低下,所以一般都是采用第二种方案。 什么是中断?
2010-07-08 19:29:00
993
原创 Linux进程的创建和终结
Linux进程的创建 linux创建进程很复杂,首先调用fork(),最终调用do_fork(),而do_fork()调用copy_process() 。 首先是copy_process()的一系列工作: 1.复制父进程。调用dup_task_struct(),此时子进程与父进程描述符完全相同。 2.把进程描述符中的各项设为0或者初始值,并把进程状态设为TASK_UNINTERUPTIBLE,保证进程未创建完毕前不要投入运行。 3.调用copy_flags
2010-07-08 19:22:00
426
原创 Linux进程状态和变迁
一、进程的状态表述: 1: #define TASK_RUNNING 0 2: #define TASK_INTERRUPTIBLE 1 3: #define TASK_UNINTERRUPTIBLE 2 4: #define TASK_STOPPED 4 5: #define TASK_TRACED 8 6: /* in tsk->exit_state
2010-07-08 19:18:00
1055
原创 Linux进程和线程
什么是进程,什么是线程? 进程是资源管理及分配的最小单元;而线程是程序执行的最小单元。一个进程的组成实体可以分为两大部分:线程集和资源集。在现代操作系统中,进程支持多线程,进程中的线程是动态的对象,代表了进程指令的执行过程。资源,包括地址空间、打开的文件、用户信息等等,由进程内的线程共享。在linux中,线程是一种特殊的进程,是一种轻量级的进程。 Linux线程的实现 Linux线程是通过进程来实现。Linux kernel为进程创建提供一个clone()系统调用,clone的参数包括如
2010-07-08 19:14:00
401
原创 Linux内核2.6简介
什么是Linux内核? 内核是我们通常所说的“Linux技术奇迹”的最重要特征。在IT术语中,内核既是操作系统的心脏,也是它的大脑,因为内核控制着基本的硬件。内核是操作系统的核心,具有很多最基本功能,如虚拟内存、多任务、共享库、需求加载、共享的写时拷贝(copy-on-write)可执行程序和TCP/IP网络功能。 Linux内核的起源可追溯到1991年芬兰大学生 Linus Torvalds编写和第一次公布Linux的日子。尽管到目前为止Linux生态系统早已远远发展到了Torvalds本人之外的范围
2010-07-08 19:06:00
588
openssl 0.9.7版本
2015-01-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人