代码改变世界

随笔档案-2013年08月

freebsd

2013-08-25 21:37 by anjsoft, 152 阅读, 收藏,
摘要: #cd /usr/ports/devel/binutils && make install 阅读全文

精通UNIX下C语言编程与项目实践

2013-08-23 21:41 by anjsoft, 365 阅读, 收藏,
摘要: cc -I //include 目录 -L //静态库目录?动态也可以 -l //小写L,接静态库名称?动态也可以 -DXXX=‘“XXFF”’ //-D直接定义宏 -c 只编译 -O 优化 -g 生成调试信息 splint , gprof, cflow , dbx , gdb ,sdb //除了工具,还有日志记录调试更便捷 动态库:隐式调用 自动加载,与静态库一致 使用时,cc 后面加上路径... 阅读全文

c 学习

2013-08-21 22:16 by anjsoft, 200 阅读, 收藏,
摘要: 在函数式宏定义中,#运算符用于创建字符串,#运算符后面应该跟一个形参 在宏定义中可以用##运算符把前后两个预处理Token连接成一个预处理Token,和#运算符不同,##运算符不仅限于函数式宏定义,变量式宏定义也可以用 make  $@,表示规则中的目标。  $<,表示规则中的第一个条件。  $?,表示规则中所有比目标新的条件,组成一个列表,以空格分隔。  $^,表示规则中... 阅读全文

cocos2dx ResolutionPolicy

2013-08-20 14:38 by anjsoft, 1377 阅读, 收藏,
摘要: FrameSize参数,在游戏运行时,我们可以通过CCEGLView::sharedOpenGLView()->getFrameSize();如果在手机上运行,那么不同分辨率将会得到不同的值CCEGLView::sharedOpenGLView()->setDesignResolutionSize(720, 480, kResolutionShowAll);CCEGLView::sharedOpenGLView()->setDesignResolutionSize(720, 480, kResolutionExactFit);CCSize winSize = CCDirect 阅读全文

linux 进程通信

2013-08-18 19:21 by anjsoft, 134 阅读, 收藏,
摘要: IPC: 管道,FIFO,信号,消息队列(system v/ posix),共享内存(system v/ posix),socket 同步机制: 互斥锁,条件变量,记录上锁, 信号量(system v/ posix):一个特殊的变量,只充许对它进行wait和signal这两种操作(P,V),最简单的信号量是只能取0,1的变量,二进制信号量。普通变量不行,因为不是原子的。 #include 阅读全文

UNIX网络编程5 POSIX 消息队列

2013-08-18 19:11 by anjsoft, 153 阅读, 收藏,
摘要: mq_open mq_close mq_unlink mq_getattr/mq_setattr mq_send/mq_receive mq_notify sigwait 代替信号处理程序的信号通知 阅读全文

UNIX网络编程 12 15共享内存区

2013-08-18 14:14 by anjsoft, 150 阅读, 收藏,
摘要: 管道,FIFO,消息队列,在两个进程交换信息时,都要经过内核传递 共享内存可以绕过,默认fork生成的子进程 并不与父进程共享内存区 mmap munmap msync 父子进程共享内存区的方法之一是:父进程fork前指定MAP_SHARED调用mmap 阅读全文

高级UNIX环境编程13 守护进程

2013-08-18 13:13 by anjsoft, 160 阅读, 收藏,
摘要: linux下,keventd守护进程为内核中运行的执行的函数提供进程上下文 bdflush,kupdated将高速缓存中的数据冲洗到磁盘上 阅读全文

高级UNIX环境编程11 线程

2013-08-18 11:11 by anjsoft, 284 阅读, 收藏,
摘要: pthread_equal pthread_self(void) pthread_create() pthread_close() pthread_join() phread_cancel() pthread_cleanup_push() pthread_cleanup_pop() 同步: 1互斥量 pthread_mutex_init() pthread_mutex_destory() pth... 阅读全文

高级UNIX环境编程10 信号

2013-08-18 10:44 by anjsoft, 120 阅读, 收藏,
摘要: 信号是软件中断,提供一种处理异步事件的方法 sigaction() 阅读全文

高级UNIX环境编程7 进程

2013-08-18 10:28 by anjsoft, 132 阅读, 收藏,
摘要: 每个程序都会收到一张环境表 extern char **environ; c程序的存储空间布局: 正文段:共享,只读 初始化数据段:存函数以外的赋值 非初始化数据段(bbs):block started by symbol 在程序开始之前,内核将此段中数据初始化0或NULL,存储函数以外的声明 栈 堆:堆位于非初始化数据段和栈之间 c中,goto语句不能跨越函数的,执行这类跳转的是setjmp ... 阅读全文

高级UNIX环境编程5 标准IO库

2013-08-18 09:59 by anjsoft, 146 阅读, 收藏,
摘要: 标准IO库都围绕流进进行的 memccpy 一般用汇编写的 ftell/fseek/ftello/fseeko/fgetpos/fsetpos 定位 在UNIX系统中,标准IO库最终都要调用IO例程 阅读全文

高级UNIX环境编程4 文件和目录

2013-08-18 09:15 by anjsoft, 111 阅读, 收藏,
摘要: #include stat fstat lstat fchmod 对已打开的文件操作 阅读全文

高级UNIX环境编程3 FILE IO

2013-08-18 08:53 by anjsoft, 151 阅读, 收藏,
摘要: POSIX中,STDIN_FILENO,STDOUT_FILENO,STDERR_FILENO 对应0,1,2 每个打开的文件都有一个与其想关联的 “current file offset" , sleek() 修改 内核用三个数据结构管理打开的文件 :进程表项(fd标志,文件指针),文件表(文件状态标志,当前文件偏移量,v节点指针),v节点(i节点) 每个进程有自己的进程表项和文件表 #incl... 阅读全文

LINUX C

2013-08-18 00:49 by anjsoft, 138 阅读, 收藏,
摘要: 1.生成configure a. autoscan =>configure.scan => configure.in b. aclocal => aclocal.m4 c. autoconf => configure 2. 新建Makefile.am AUTOMAKE_OPTIONS=foreign bin_PROGRAMS=helloworld helloworld_SOUR... 阅读全文

高级UNIX环境编程2

2013-08-17 23:34 by anjsoft, 182 阅读, 收藏,
摘要: perror("error:") ; strerror 日历时间:time_t (1970.1.1开始的秒数) struct timeval (秒数和微秒) struct tm struct t m * localtime(const time_t *t); === time_t mktime(struct ™ *tmbuf); struct t m* gmtime( const ... 阅读全文

高级UNIX环境编程

2013-08-17 15:20 by anjsoft, 149 阅读, 收藏,
摘要: 常规文件 只有索引节号(i-number,是一批i-node的索引),i-node不含文件名及数据字节,包括文件类型,链接数量,uid,gid,访问权限,字节数,最后访问时间,最后修改时间,信息节点最后修改时间,文件内容磁盘块指针 目录:使用名称来标识文件,实际中总是用目录来访问文件,每个目录包含一个两列表,一列是文件名称,一列是索引节号,名称/信息节点对被称为链接(link) 块特殊文件:包含固... 阅读全文

posix ipc

2013-08-14 21:41 by anjsoft, 146 阅读, 收藏,
摘要: 消息队列 mq_open /mq_close/mq_unlink mq_getattr/mq_setattr mq_send/mq_receive/mq_notify 信号量 sem_open/sem_close/sem_unlink sem_init/sem_destroy sem_wait/sem_trywait/sem_post/sem_getvalue 共享内存 shm_oepn/shm... 阅读全文

node.js

2013-08-10 20:43 by anjsoft, 140 阅读, 收藏,
摘要: 永远使用 var 定义变量以避免引入全局变量,因为全局变量会污染 命名空间,提高代码的耦合风险。 阅读全文

cocos2dx工程

2013-08-03 15:58 by anjsoft, 153 阅读, 收藏,
摘要: 1. create-android-project.sh 进入 pro.android/ ln -s ../Resources ./Resources 阅读全文

facebook

2013-08-03 09:44 by anjsoft, 261 阅读, 收藏,
摘要: keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64 阅读全文