
linux
贰月十七
吾尝终日而思矣,不如须臾之所学也。吾尝跂而望矣,不如登高之博见也。……君子生非异也,善假于物也
展开
-
linux 文件權限說明
chmod a+x+w原创 2014-11-06 01:36:09 · 576 阅读 · 0 评论 -
centos下安装libiconv
centos下安装libiconv1.wget -c http://www.itkb.ro/userfiles/file/libiconv-glibc-2.16.patch.gz2.cd libiconv-1.14/srclib3.--- srclib/stdio.in.h.orig 2011-08-07 16:42:06.000000000 +0300+++ src原创 2016-05-15 19:59:24 · 4366 阅读 · 0 评论 -
避免僵尸进程
避免僵尸进程 while(1){ ret = wait(NULL);原创 2016-02-13 15:53:15 · 555 阅读 · 0 评论 -
守护进程
守护进程概念: 什么是守护进程? 守护进程是在后台运行不受控端控制的进程,通常情况下守护进程在系统启动时自动运行守护进程的名称通常以d结尾,比如sshd、xinetd、crond等。创建守护进程步骤: 1.调用fork(),创建新进程,它会是将来的守护进程 2.在父进程中调用exit,保原创 2016-02-07 21:47:26 · 746 阅读 · 0 评论 -
进程结束的五种方式
进程结束的五种方式1.exit ()2._exit ()3exit (): 是c语言库函数,执行时内部先调用进程终止处理程序(atexit(),先注册后执行原则),再进行I/O刷新,然后执行_exit (). _exit (): 是系统调用,执行时直接陷入内核状态.('\n',有刷新I/O缓冲区的作用;fflush原创 2016-02-07 13:20:51 · 1090 阅读 · 0 评论 -
调试之剑
跟踪调试:GDB gdb 是由 GNU 软件系统社区提供的调试器,同 gcc 配套组成了一套完整的开发环境,可移植性很好,支持非常多的体系结构并被移植到各种系统中(包括各种类 Unix 系统与 Windows 系统里的 MinGW 和 Cygwin )。此外,除了 C 语言之外,gcc/gdb 还支持包括 C++、Objective-C、Ada 和 Pascal 等各种语言后端的编译和调试。 gc原创 2015-12-26 20:57:33 · 2239 阅读 · 1 评论 -
linux学习(一)
linux学习(一)体系结构图:原创 2016-01-10 21:00:43 · 577 阅读 · 0 评论 -
linux 解压打包命令整理
5.解压小全 tar xvfj lichuanhua.tar.bz2 tar xvfz lichuanhua.tar.gz tar xvfz lichuanhua.tgz tar xvf lichuanhua.tar unzip lichuanhua.zip原创 2014-11-06 00:02:26 · 496 阅读 · 0 评论 -
在linux下制作libxxx.so 动态库以及使用方法
在linux下面动态库的使用是非常常用的,也是非常实用的。步骤一:创建一个.h头文件 ,头文件中声明动态库中的函数#ifndef _TEST_H_#define _TEST_H_#ifdef __cplusplus /*c c++ 混合编程*/extern "C" {#endif /*c c++ 混合编程*/int原创 2015-05-24 10:04:26 · 5071 阅读 · 0 评论 -
物理内存不够,使用交换内存
物理内存不够,使用交换内存申请1个G的交换内存sudo dd if=/dev/zero of=/var/tmp/swap bs=1k count=1024000分区文件格式化为交换分区格式sudo mkswap /var/tmp/swap挂载到文件系统sudo swapon /var/tmp/swap卸载sudo swapoff /var/tmp/s原创 2016-05-30 10:34:26 · 1981 阅读 · 0 评论 -
vim-我的利器
vim-我的利器安装步骤:1.curl https://j.mp/spf13-vim3 -L > spf13-vim.sh && sh spf13-vim.sh 2.作者jhnwsk的原话:If you run :h vundle it says that you can use :let g:vundle_default_git_prot原创 2016-05-25 09:24:31 · 618 阅读 · 0 评论 -
无缝世界网游服务器架构设计思路(上)
无缝世界网游服务器架构设计思路(上)过去一年中,花了很多时间在考虑服务器架构设计方面的问题。看了大量文章、也研究了不少开源项目,眼界倒是开阔了不少,不过回过头来看,对网游架构设计方面的帮助却是不多。老外还是玩儿console game的多,MMO Games方面涉及的还是不如国内广泛。看看 Massively Multiplayer Games Development 1 & 2 这两本...原创 2019-01-11 19:31:35 · 599 阅读 · 0 评论 -
Linux下编译安装log4cxx
Linux下编译安装log4cxxlog4cxx的官方下载地址是http://logging.apache.org/log4cxx/index.html ,我用的是apache-log4cxx-0.10.0版本。为了编译它,还需要两个辅助库,apr,和apr-util,可以在这里下载http://apr.apache.org/download.cgi ,我用的版本分别是apr-1.5.0.tar.g原创 2017-12-02 23:50:53 · 938 阅读 · 0 评论 -
mysql的基本使用
mysql的基本使用原创 2015-09-06 08:31:52 · 996 阅读 · 1 评论 -
GCC 4.8及以上支持内存非法访问检查
gcc4.8及以上版本支持地址越界,野指针检查,只需要在编译时使用-fsanitize=address选项即可,当运行程序时如果访问非本程序申请的地址就会报错。 root@localhost:/home/ngos/practice> vi nullpoint.c 1 #include “stdio.h” 2 3 int main(int a转载 2017-07-28 18:47:26 · 1826 阅读 · 0 评论 -
GCC 编译选项
GCC 编译选项 gcc 提供了大量的警告选项,对代码中可能存在的问题提出警 告,通常可以使-Wall来开启以下警告: -Waddress -Warray-bounds (only with -O2) -Wc++0x-compat -Wchar-subscripts -Wimplicit-int -Wimplicit-function-转载 2017-02-27 14:05:50 · 660 阅读 · 0 评论 -
epoll源码探秘(epoll_create)
epoll的源码浅谈原创 2016-08-24 10:34:12 · 5182 阅读 · 2 评论 -
epoll源码探秘(epoll_ctl)
epoll源码探秘(epoll_ctl)原创 2016-08-25 11:22:44 · 2165 阅读 · 0 评论 -
网络服务器开发总结
网络服务器开发总结 一、概述经过多年网络服务器开发实战,于此总结实践体会。本文涉及到异步连接、异步域名解析、热更新、过载保护、网络模型与架构及协程等,但不会涉及accept4、epoll等基本知识点。 二、可写事件相信大多数初学者都会迷惑可写事件的作用,可能觉得可写事件没有什么意义。但在网络服务器中转载 2016-04-23 08:55:11 · 871 阅读 · 0 评论 -
Linux源代码目录分析
Linux用来支持各种体系结构的源代码包含大约4500个C语言程序,存放在270个左右的子目录下,总共大约包含200万行代码,大概占用58MB磁盘空间。 源代码所有在目录:/usr/src/linux (大部分linux发行版本中) init 内核初始化代码 kernel 内核核心部分:进程、定时、程序执行、信号、模块。。。 mm 内存处理 arch 平台相关代码原创 2015-11-03 14:25:31 · 1859 阅读 · 0 评论 -
linux下socket编程归纳记录
所需头文件:#include<sys/types.h>#include<sys/socket.h>基础套接字:返回值: 0表示成功 -1表示失败 errno记录错误代码1:创建套接字 int socket(int domain, int type, int protocol) 参数描述: domain:套接字域名 { AF_原创 2015-06-03 11:20:31 · 1197 阅读 · 0 评论 -
超强的linux 一句话 命令
1.删除0字节文件find -type f -size 0 -exec rm -rf {} \;2.查看进程按内存从大到小排列ps -e -o "%C : %p : %z : %a"|sort -k5 -nr3.按cpu利用率从大到小排列ps -e -o "%C : %p : %z : %a"|sort -nr4.打印说cache里的URLgrep -r转载 2014-12-03 12:53:37 · 692 阅读 · 0 评论 -
vim 的编程定制
进入EX模式语法高亮set syntax=on/off显示行号set nu首行缩进set ai原创 2014-11-08 11:24:51 · 408 阅读 · 0 评论 -
Linux开启ssh服务,开启远程登入前提
Linux开启ssh服务首先更新源 sudo apt-get update安装ssh服务sudo apt-get install openssh-server检测是否已启动ps -e | grep ssh看到有ssh字样,说明已启动,如果没有就手动启动/etc/init.d/ssh start配置ssh-serv原创 2014-11-04 19:36:57 · 687 阅读 · 0 评论 -
linux用户管理
1)管理用户(user)的工具或命令; useradd 注:添加用户 adduser 注:添加用户 passwd 注:为用户设置密码 usermod 注:修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等; pwcov 注:同步用户从/etc/passwd 到/etc/shadow pwck 注:pwck是校验用户配置文件/etc/passwd原创 2014-11-06 00:28:30 · 486 阅读 · 0 评论 -
linux 截图工具scrot
scrot的使用scrot [参数] [文件名][参数]-s : 鼠标选取范围scrot -s abc-c : 延时-d :倒计时 (通常cd一起用)scrot -cd 10 abc[文件名]保存在当前路径下原创 2014-11-08 11:42:40 · 610 阅读 · 0 评论 -
Linux-虚拟机安装
首先打开vmware官网的下载链接:https://my.vmware.com/web/vmware/info/slug/desktop_end_user_computing/vmware_workstation/9_0选择 linux版本下载选择 系统对应的版本,64位系统不能安装32位登陆:512324291@QQ.COM原创 2014-11-04 19:40:29 · 792 阅读 · 0 评论 -
linux下安装JDK
在linux下安装JDK如下:第一步:查看Linux自带的JDK是否已安装(1)查看已经安装的jdk:# rpm -qa|grep jdk ← 查看jdk的信息或直接执行或# rpm -q jdk或# java -version (2)rpm -qa|grep jdk 卸载: (3)rpm -e rpm包名(上面看到的)转载 2014-11-08 23:36:50 · 525 阅读 · 0 评论 -
linux 下安装.tar.gz类型的jdk
在Ubuntu 12.10下安装 jdk-7u10-linux-x64.tar.gz 总的原则:将jdk-7u10-linux-x64.tar.gz压缩包解压至/usr/lib/jdk,设置jdk环境变量并将其修改为系统默认的jdk 1.将jdk-7u5-linux-x64.tar.gz拷贝到/usr/lib/jdk/目录下面,这里如果没有jdk文件夹,则创建该文件夹,命令:转载 2014-11-09 00:15:15 · 682 阅读 · 0 评论 -
vim 中文乱码问题
方法如下:$vim ~/.vimrclet &termencoding=&encodingset fileencodings=utf-8,gbk$:wq原创 2014-12-25 15:53:03 · 450 阅读 · 0 评论 -
centos 安装C语言帮助手册
CentOS系统有可能默认没有安装C语言帮助手册,man一个函数时会找不到帮助文件,用下面的命令安装:yum install man-pages.noarch转载 2015-04-26 20:46:28 · 701 阅读 · 0 评论 -
centos 7 图形界面 文本界面切换
1,命令模式systemctl set-default multi-user.target2,图形模式systemctl set-default graphical.target接着 reboot 即可原创 2015-08-16 12:20:00 · 6427 阅读 · 0 评论 -
make 规则
.SUFFIXES:.c .o ---------------------------------------------建立.c .o文件关联CC=g++OBJK=$(SRC:.cpp=.o)--------------------------------------将字符串中的.cpp替换为.oEXEC=testSRC=hello.cpp\------------------原创 2014-11-28 09:10:17 · 877 阅读 · 0 评论 -
Linux中出现/usr/bin/ld: cannot find -lxxx报错该怎么办?
在linux环境编译应用程式或lib的source code时常常会出现如下的错误讯息: 代码如下: /usr/bin/ld: cannot find -lxxx 这些讯息会随着编译不同类型的source code 而有不同的结果出来如: 代码如下: /usr/bin/ld: cannot find -lc /usr/bin/ld: cannot find -l转载 2015-07-22 08:58:20 · 911 阅读 · 0 评论 -
ubuntu 无线 经常掉线
ubuntu下wifi频繁掉线处理方法在终端输入 sudo gedit /etc/ppp/options 将弹出的文档中的 lcp-echo-failure 4 (这句在232行) 改为 lcp-echo-failure 30 lcp-echo-failure次数被设为4,而lcp-echo-interval设为30秒。也就是说,如果120秒钟之内,ADSL服务器没有给回echo-repl转载 2015-07-19 20:37:23 · 3107 阅读 · 0 评论 -
bad ELF interpreter
是因为64位系统中安装了32位程序 解决方法: yum install glibc.i686 重新安装以后还有如下类系错误 再继续安装包 error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or d原创 2015-08-11 20:47:43 · 878 阅读 · 0 评论 -
多系统启动出现grub rescue模式,错误“normal.mod not found”解决办法
昨天刚装的双系统,今天在WIN7下对硬盘进行分区,没想到grub启动出现了问题,重启的时候出现错误:error:file '/boot/grub/i386-pc/normal.mod' not found网上找了不少的办法,看到的大致雷同,提到的几个命令应该记录一下。在救援模式下,只有很少的命令可是使用:set 设置环境变量 ls 查看设备 insmod 加载模块 root 指定用于启转载 2015-07-27 23:40:08 · 7462 阅读 · 0 评论 -
vs2010下配置pthread
在VS2010下,用C语言编写pthread多线程程序的配置 1、从http://sourceware.org/pthreads-win32/下载pthread 的windows安装包,我下的是pthread-w32-2-9-1-release.zip,其他版本也可以。解压到pthread-w32-2-9-1-release。 2、打开vs2010,项目->属性->配置属性->VC++转载 2015-05-28 22:32:17 · 1265 阅读 · 0 评论 -
core文件限制解除
ulimit -c unlimitedulimint -a 用来显示当前的各种用户进程限制Linux对于每个用户,系统限制其最大进程数,为提高性能,可以根据设备资源情况,设置个Linux用户的最大进程数,一些需要设置为无限制:数据段长度:ulimit -d unlimited最大内存大小:ulimit -m unlimited堆栈大小:ulimit -s unl转载 2015-04-28 10:33:12 · 1835 阅读 · 0 评论 -
无缝世界网游服务器架构设计思路(下)
无缝世界网游服务器架构设计思路(下)上次写了《无缝世界网游服务器架构的设计思路》,这次是续篇,主要内容是两种架构的优缺点分析。从一组服务器的角度来看,一般来说,我们的服务器组(Cluster)内都会有登陆验证服务器(Login Server)、持久性数据服务器(DB及DB Proxy)、连接代理服务器(Gate Server、FEP Server、Client Proxy等)以及Auto Pa...原创 2019-01-11 19:36:14 · 590 阅读 · 0 评论