关闭

Pycharm 下远程调试 Neutron 简介

实验背景及环境介绍 众所周知要深入学习一款开源软件就去阅读它的源码吧,但如果只是阅读冷冰冰的代码,往往是一头雾水,你肯定希望知道代码运行起来的上下文、变量值的变化,那么你需要调试。对于 Openstack 来说,大多代码都是开源 Python 编写的,这对于学习来说成本低很多,因为你可以随时修改它的代码,重启下进程你的代码就开始运行了。即使这样,对于调试 Openstack 这样大型的软件还...
阅读(125) 评论(0)

搭建私有 Docker 仓库服务器

Docker Hub 是 Docker 官方的公共仓库服务器,用户在 DockerHub 上只能创建一个私有仓库,这对于有些用户是不够用的,而且 DockerHub 服务器的访问速度也是个很大问题,那么我们希望能在自己本地的服务器上创建一个类似于 DockerHub 仓库服务器供团队使用,这也是可以的。 我测试的环境是 Mac OSX 下,已经通过 Boot2Docker 工具安装好 Doc...
阅读(13575) 评论(0)

最小 Docker 镜像 hello-world 剖析

开始学习 Docker 的同学基本上都是按照官方的 guide 来安装,之后要测试是否已经安装成功,官方会让你 pull 一个 hello-world 示例镜像下来并运行,如下命令: guohl@ghl-MBP ⮀ ~ ⮀ docker pull hello-world 31cbccb51277: Pull complete e45a5af57b00: Pull complete 511136ea3...
阅读(15096) 评论(2)

Windows 更新导致 VirtualBox 启动失败

我的虚拟机版本是 4.3.20, Windows 版本是 Windows 8,但今天突然发现 VirtualBox 启动不了,报的错误如下:为了搜索引擎能检索到此错误信息,我将错误信息的文本贴在下面: NtCreateFile(\Device\VBoxDrvStub) failed: Unkown Status - 5600 (0xffffea20) (rcNt=0xe986ea20) V...
阅读(6721) 评论(0)

Linux 磁盘管理实践

问题描述研一的小伙伴向我反应实验室的 Confluence 知识管理系统上传不了附件,经过排查发现是磁盘空间不足了,使用 df 命令查看磁盘使用量如下图:实验室的文件服务器有三块硬盘,分别为 250GB、1TB、1TB,对应的设备文件名分别为 /dev/sda1、/dev/sda2、/dev/sda3,但图中看到只有两块硬盘的信息,是因为第二块磁盘作为物理的 RAID1 备份第三块磁盘。现在文件系统...
阅读(1282) 评论(0)

make 学习笔记

make 是用来构建和管理工程的工具,它是一个命令,需要解释一个称为 makefile 中的指令,makefile 是描述工程中所有文件的编译、链接的规则。 make 可以根据依赖文件和目标文件的最后修改时间,来决定哪些文件需要更新,哪些文件不需要更新,这样能高效地构建工程。 makefile 基本规则描述 makefile 主要是由规则来组成的,一个基本的规则描述如下:...
阅读(871) 评论(0)

从12306帐号泄漏谈用户密码安全

新闻回顾 12月25日圣诞节,据漏洞反馈平台乌云网显示,大量12306用户数据在互联网疯传。本次泄露的用户数据包括用户帐号、明文密码、身份证、邮箱等。 随后,12306官方发表公告,称经过认真核查,此泄露信息全部含有用户的明文密码。12306网站数据库所有用户密码均为非明文转换码,网上泄露的用户信息系经其他网站或渠道流出。 12月26日,中国铁路官方微博发消息,铁路公安机关将涉嫌窃取...
阅读(1034) 评论(2)

编程语言的类型系统

每学一门新的编程语言时,在看到介绍该门编程语言的特点时,经常会遇到 静态、动态、强、弱 、隐式、显式 类型等字样,似懂非懂,这里结合网上的资料总结一下它们的含义以及区别,描述不一定专业、准确,但求能进一步理解这些词的概念即可。 类型系统(Type System)用于定义如何将编程语言中的数值和表达式归类为许多不同的类型,如何操作这些类型,这些类型如何互相作用。根据这些种种不同,可以将编程语言...
阅读(932) 评论(0)

Python Socket 编程——聊天室示例程序

上一篇 我们学习了简单的 Python TCP Socket 编程,通过分别写服务端和客户端的代码了解基本的 Python Socket 编程模型。本文再通过一个例子来加强一下对 Socket 编程的理解。 聊天室程序需求 我们要实现的是简单的聊天室的例子,就是允许多个人同时一起聊天,每个人发送的消息所有人都能接收到,类似于 QQ 群的功能,而不是点对点的 QQ 好友之间的聊天。如下图...
阅读(1654) 评论(1)

Python Socket 网络编程

Socket 是进程间通信的一种方式,它与其他进程间通信的一个主要不同是:它能实现不同主机间的进程间通信,我们网络上各种各样的服务大多都是基于 Socket 来完成通信的,例如我们每天浏览网页、QQ 聊天、收发 email 等等。要解决网络上两台主机之间的进程通信问题,首先要唯一标识该进程,在 TCP/IP 网络协议中,就是通过 (IP地址,协议,端口号) 三元组来标识进程的,解决了进程标识问题,...
阅读(1040) 评论(0)

为什么 C++ 中成员函数指针是 16 字节?

当我们讨论指针时,通常假设它是一种可以用 void * 指针来表示的东西,在 x86_64 平台下是 8 个字节大小。例如,下面是来自 维基百科中关于 x86_64 的文章 的摘录: Pushes and pops on the stack are always in 8-byte strides, and pointers are 8 bytes wide. 从 CPU 的角...
阅读(1067) 评论(0)

GNU Readline 库及编程简介

用过 Bash 命令行的一定知道,Bash 有几个特性: TAB 键可以用来命令补全↑ 或 ↓ 键可以用来快速输入历史命令还有一些交互式行编辑快捷键: C-A / C-E 将光标移到行首/行尾C-B / C-F 将光标向左/向右移动一个位置C-D 删除光标下的一个字符C-K 删除光标及光标到行尾的所有字符C-U 删除光标到行首的所有字符... 同样的操作在很多交互式程序都有类似的...
阅读(2222) 评论(0)

C/C++ 中头文件相互包含引发的问题

C/C++ 中头文件相互包含引发的问题 今天下午遇到一个头文件相互包含而导致的编译问题,花了我不少时间去调试没找到问题,最后晚上跟师兄讨论不少时间,突然有所顿悟! 问题重现 我把问题脱离于项目简单描述一下:我写了一个函数 bool func(ClassA* CA) 需要加到项目中,我就把这个函数的声明放到 head1.h 中,函数参数类型 ClassA 定义在另一个头文件 hea...
阅读(25895) 评论(8)

浅谈 C++ 中的 new/delete 和 new[]/delete[]

在 C++ 中,你也许经常使用 new 和 delete 来动态申请和释放内存,但你可曾想过以下问题呢? new 和 delete 是函数吗?new [] 和 delete [] 又是什么?什么时候用它们?你知道 operator new 和 operator delete 吗?为什么 new [] 出来的数组有时可以用 delete 释放有时又不行?… 如果你对这些问题都有疑问的话,...
阅读(83403) 评论(13)

什么是 Web 框架?

Web 应用框架,或者简单的说是“Web 框架”,其实是建立 web 应用的一种方式。从简单的博客系统到复杂的富 AJAX 应用,web 上每个页面都是通过写代码来生成的。我发现很多人都热衷于学习 web 框架技术,例如 Flask 或这 Django 之类的,但是很多人并不理解什么是 web 框架,或者它们是如何工作的。这篇文章中,我将探索反复被忽略的 web 框架基础的话题。阅读完这篇文章,你...
阅读(1507) 评论(0)
79条 共6页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:330943次
    • 积分:3293
    • 等级:
    • 排名:第11312名
    • 原创:73篇
    • 转载:0篇
    • 译文:6篇
    • 评论:89条
    公告
    最新评论
    友情链接