Articles

  • Linux Daemon

    Introduction

    守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程是一种很有用的进 程。Linux的大多数服务器就是用守护进程实现的。比如,Internet服务器inetd,Web服务器httpd等。同时,守护进程完成许多系统任务。 比如,作业规划进程crond,打印进程lpd等。

  • Linux 进程间通信 (IPC)

    进程通信目的

    • 数据传输:一个进程需要将它的数据发送给另一个进程,发送的数据量在一个字节到几M字节之间
    • 共享数据:多个进程想要操作共享数据,一个进程对共享数据的修改,别的进程应该立刻看到
    • 通知事件:一个进程需要向另一个或一组进程发送消息,通知它(它们)发生了某种事件(如进程终止时要通知父进程)
    • 资源共享:多个进程之间共享同样的资源。为了作到这一点,需要内核提供锁和同步机制
    • 进程控制:有些进程希望完全控制另一个进程的执行(如Debug进程),此时控制进程希望能够拦截另一个进程的所有陷入和异常,并能够及时知道它的状态改变
  • Linux USB 驱动

    记得大一的时候试着为自己的双飞燕鼠标写驱动来着,结果写了一半,最后发现只实现了指针上下移动,左右移动有问题,然后就没下文了,这次想起来,已经过去了两年了,期间也陆续写过一些简单的内核模块的代码,现在突然旧鼠标坏了,就想着再试一次,顺便也练练手。

    References

    • http://www.ibm.com/developerworks/cn/linux/l-usb/index2.html
    • http://www.cnblogs.com/hoys/archive/2011/04/01/2002406.html
    • http://blog.sina.com.cn/s/blog_53689eaf01011f7u.html
    • http://www.cnblogs.com/image-eye/archive/2011/08/24/2152580.html
  • Django Basics

    Table of Contents

  • MySQL Primer - Concepts

    Introduction

    This article described some basic usage of mysql server and introduce intermediate MySQL internals.

  • ubuntu 最常用和终端快捷键

    Line Editing

    Shortcut Explain
    ALT d 删除从光标到当前单词结尾的部分
    ALT a 将光标移到当前单词头部
    ALT e 将光标移到当前单词尾部
    CTRL y 插入最近删除的单词
    CTRL a 将光标移到行首
    CTRL e 将光标移到行尾
    CTRL k 从光标处删除到行尾
    CTRL u Delete backward from cursor
    CTRL d 从光标处向右删除
    CTRL w 删除从光标到当前单词开头的部分
    CTRL y 粘贴由CTRL+u,CTRL+d,CTRL+w删除的单词
    CTRL b 左移一个字符
    CTRL f 右移一个字符
    CTRL p 向上显示缓存命令
    CTRL n 向下显示缓存命令
    CTRL c 终端进程
    CTRL l 清屏,类似 clear 命令
    CTRL r 查找历史命令
    CTRL R Search the history backwards with multi occurrence
    CTRL xx Move between EOL and current cursor position
    CTRL x @ Show possible hostname completions
    CTRL z Suspend/ Stop the command
    CTRL h 删除当前字符
    !$ 重复前一个命令最后的参数。
  • chmod 命令使用方法详解

    chmod

    Linux/Ubuntu 系统中文件调用的权限分为三级:文件拥有者(u)、群组(g)、其他(o)。用chmod就可以更改文件的权限。chmod是一个相当灵活的命令,对同一个文件的权限的修改可以用多种风格的命令格式来实现。

  • UFW - Ubuntu FireWall

    安装

    sudo apt-get install ufw
    

    配置

    sudo ufw enable
    sudo ufw default deny
    

    上边的配置已经可以了,对一般用户而言 :)

    高级配置

    3.开启/禁用

    • sudo ufw allow|deny [service]
    • 打开或关闭某个端口,例如:
    • sudo ufw allow smtp 允许所有的外部IP访问本机的25/tcp (smtp)端口
    • sudo ufw allow 22/tcp 允许所有的外部IP访问本机的22/tcp (ssh)端口
    • sudo ufw allow 53 允许外部访问53端口(tcp/udp)
    • sudo ufw allow from 192.168.1.100 允许此IP访问所有的本机端口
    • sudo ufw allow proto udp 192.168.0.1 port 53 to 192.168.0.2 port 53
    • sudo ufw deny smtp 禁止外部访问smtp服务
    • sudo ufw delete allow smtp 删除上面建立的某条规则

    4.查看防火墙状态

    sudo ufw status
    
  • Linux Thread vs Process

    本文整理了一些Linux系统下线程和进程的异同。

    相同点

    1. 二者都具有ID,一组寄存器,状态,优先级以及所要遵循的调度策略。
    2. 每个进程都有一个进程控制块,线程也拥有一个线程控制块。
    3. 线程和子进程共享父进程中的资源;线程和子进程独立于它们的父进程,竞争使用处理器资源;线程和子进程的创建者可以在线程和子进程上实行某些控制,比如,创建者可以取消、挂起、继续和修改线程和子进程的优先级;线程和子进程可以改变其属性并创建新的资源。
  • LVM - Logical Volume Management

    LVM是逻辑盘卷管理(Logical Volume Manager)的简称。

    Table of Contents