自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (11)
  • 收藏
  • 关注

原创 关于“给PHP源代码加密“的代码分析

/*时间:2022-1-9作者:aweii内容:关于"给PHP源代码加密"的代码分析[原创]*/网上看到一则"给PHP源代码加密"的代码,饶有兴趣研究了下(https://www.jb51.net/article/134506.htm)。代码如下: <?phpfunction RandAbc($length = "") { // 返回随机字符串 $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopq...

2022-01-09 17:23:46 321 1

原创 2021-06-21 php偏随机数实现概率抽奖的实例

偏随机数是使随机数范围偏向于权重大的范围。比如随机抽奖的概率规定如下:一等奖概率10%,二等奖概率20%,三等奖概率30%,四等奖概率40%。要达到此目的,编制抽奖程序如下://///////偏随机数实现概率抽奖$lottery=["一等奖"=>10,"二等奖"=>20,"三等奖"=>20,"四等奖"=>40];//生成权重数组function rand_weighted($numbers){ $total=0; $weight=[]; fo...

2021-06-21 18:45:05 201

原创 《PHP与MySQL程序设计(第四版)》中第73页4.2.6节分期还贷计算器数学原理分析

-----------------------------《PHP与MySQL程序设计(第四版)》中第73页4.2.6节分期还贷计算器数学原理分析。《PHP与MySQL程序设计(第四版)》中73页4.2.6节,代码清单4-1是还贷计算器函数amortizationTable,代码如下。其使用的是等额本息分期还款模型。要理解这段代码,关键是理解月还款额b的计算公式背后的数学原理。设本金a,还款月数n,月利率r,每月还款b。还款计算如下:首月利息a*r,还款后,余额a1=a(1+r)-b;次月利息a1*

2020-07-01 20:27:30 397

原创 Linux内核2.4.18创建硬链接的系统调用sys_link

1、磁盘目录项结构/* * The new version of the directory entry.  Since EXT2 structures are * stored in intel byte order, and the name_len field could never be * bigger than 255 chars, it's safe to recla

2017-04-05 22:27:16 900

原创 两种文件写操作的页缓存数据刷出操作和函数调用路径分析

一、内存映射文件的写操作(MAP_SHARED模式):1、写内存时按以下流程标记页为脏:pte_mkdirty(pte),swap_out->……->try_to_swap_out时set_page_dirty(page)2、文件映射内存同步到磁盘(调用sys_msync)(1)sys_msync->msync_interval:调用filemap_sync、filemap_fdata

2017-04-04 13:06:31 490

原创 Linux内核PROC文件系统的初始化和主要函数分析

简要介绍了linux2.4.0内核proc文件系统的初始化和部分函数代码。

2017-04-01 22:57:18 2243

原创 C语言标准库函数getenv的实现

C语言标准库函数getenv可获取环境参数(根据参数名称),函数声明:char* getenv(char*name);其实现如下:---------------glibc-1.09.1/sysdeps/generic/getenv.c/* Return the value of the environment variable NAME. */char *DE

2016-09-10 14:02:57 5500

原创 测试

//test1

2016-07-16 16:16:20 262

原创 上楼梯问题的解法

/*  问题:有20级楼梯,每次只能上一级或两级,请问有几种上法。(《少年班》中老师问大法的一个问题,大法通过神奇的心算[Fibonacci数列]得出10946)  本问题的本质及求解斐波那契数列的第n项。常见的计算机算法有递归和线性规划法。当n较大时,用法二更好。  递推公式为:F(n)=F(n-1)+F(n-2),其中F(1)=1,F(2)=2。  2015-8-23

2015-08-23 20:52:15 1502

原创 VirtualBox虚拟机中运行Android

在PC上,运行ADB模拟器速度很慢,可以在VirtualBox中运行x86版的android虚拟机解决这个问题,然后通过虚拟机实现系统调试功能。步骤如下:1、下载android-x86,安装光盘映像网址:http://www.android-x86.org/download现成的虚拟机映像下载网址:http://dl.iplaysoft.com/files/1677.html#down

2014-01-07 20:20:17 1200

原创 Android源代码下载

以下操作在VirtualBox中的Fedora-17虚拟机上进行,工作目录为/mnt/disk2/source/android/2.2/1、 下载python脚本repo#curl"http://php.webtutor.pl/en/wp-content/uploads/2011/09/repo"> ./repo#chmod 777 ./repo成功!标准的地址不可用:curl

2014-01-05 12:56:38 765

原创 VirtualBox虚拟机下Fedora17与windows宿主机共享文件夹的设置

VirtualBox虚拟机下Fedora17与windows宿主机共享文件夹的设置  笔者以VirtualBox虚拟机安装了Fedora17操作系统,宿主机操作系统是win2003,尝试着在两者之间共享文件夹。以下是设置步骤:1、         windows下建立一个目录N:\temp\作为共享文件夹用。Vbox界面上,选中虚拟机Fedora17后,单击右侧的共享文件夹,出现设置窗

2014-01-02 13:21:05 1307

原创 2.6.11内核CPU频率(khz)的计算

CPU频率的计算使用了两个函数init_cpu_khz()和calibrate_tsc()  ----------------------------arch/i386/kernel/timers/Common.c--------------------//tsc_quotient中保存通过calibrate_tsc()计算得出(CPU单个时钟周期的微秒数)*(2^32)的值,然后

2013-03-17 11:07:32 1924

原创 无符号数(unsigned) 和带符号数(int)的循环变量 在for循环条件判断使用中的区别1例

先看一段代码:unsigned i1 ;for (i1=9;i1>=0;i1--){ printf("%u\n",i1);}由于作为无符号整型的i1始终大于等于0,所以是个死循环,如果把i1改为int类型,就不再是死循环了。那么,编译以后,汇编指令怎么分别判断无符号类型或整型变量与0的大小呢?经过以下程序调试过程中的反汇编代码得知,当i1为unsigned类型是,i1>=0是通过

2012-12-10 16:53:07 2629

原创 linux-2.0.35的打开文件系统调用sys_open分析

----sys_open:linux\fs\open.c----asmlinkage int sys_open(const char * filename,int flags,int mode){char * tmp;int fd, error;//获取打开文件描述符(进程打开文件结构指针数组的下标)fd = get_unused_fd();if (fd < 0)return fd

2012-12-08 21:58:36 1581 4

原创 linux-1.2.13内核的编译生成和引导

在linux目录下运行命令 make zimage即生成内核,过程是这样的。linux/makefile中有这一句:include arch/$(ARCH)/Makefile,指向了linux/arch/i386/makefile,其中有目标:--linux/makefile--MAKEBOOT = $(MAKE) -C arch/$(ARCH)/bootzImage: vmlin

2012-12-08 21:56:43 1195 2

原创 vsyscall page

-----------------------------------vsyscall page-------------------------------------内核中有一个永久固定映射页面(位于0xffffe000-0xffffefff),名为vsyscall页。这个区域存放了系统调用入口kernel_vsyscall的代码,以及信号处理程序的返回代码kernel_sigretu

2012-01-15 11:08:28 1927

原创 linux2.6.11的工作队列机制分析

一、概述  工作队列提供了一种通过线程同步或者异步运行内核函数的通用机制。通过completion和等待队列实现了同步运行功能(调用者等待被调用函数执行完毕),不使用completion则可实现异步运行的功能。相关的定义和代码主要在以下文件中:linux\kernel\Workqueue.clinux\include\linux\Workqueue.h二、数据结构

2011-12-01 23:24:00 1104

原创 linux kernel2.6中软中断运行线程ksoftirqd的创建

1、软中断由内核线程ksoftirqd处理,下面说一下它的创建过程。start_kernel()创建init线程,init()调用do_pre_smp_initcalls()->spawn_ksoftirqd(),spawn_ksoftirqd()分两次调用cpu_callback(),分别使用参数CPU_UP_PREPARE和CPU_ONLINE。使用CPU_UP_PREPARE调用

2011-11-12 17:02:28 1987

原创 一个计算平方根的简单算法

#include #include using namespace std;double abs1(double a){ return a>=0?a:-a;}int main(){ double a,m,e=1e-6; int i=0; printf("Please input number:"); scanf("%lf",&a);    if(

2011-11-11 19:50:05 1464

rfcs_txt(中文文档)

a request for comment documents collection which is translated to Chinese.

2018-05-01

visualbox5.2.10源代码

The VirtualBox sources are available free of charge under the terms and conditions of the GNU General Public License, Version 2. By downloading from the below links, you agree to these terms and conditions.

2018-05-01

TCPIP.Sockets.in.Java.Practical.Guide.for.Programmers

TCPIP.Sockets.in.Java.Practical.Guide.for.Programmers,

2013-11-30

福布斯电脑革命史

福布斯电脑革命史,一部计算机的发展史。对计算机时代这 50 年历史的轻松描述

2012-12-26

C 语言深度解剖

C语言深度解剖——解开程序员面试笔试的秘密

2012-12-11

WINDOWS程式设计

WINDOWS程式设计指南,chm格式,原 作 者:Charles Petzold

2012-10-01

深入理解Linux内核(第3版)

深入理解Linux内核(第3版) Understanding the Linux Kernel, 3rd Edition By Daniel P. Bovet, Marco Cesati ............................................... Publisher: O'Reilly Pub Date: November 2005 ISBN: 0-596-00565-2 Pages: 942

2012-09-24

-乐者为王-

Linus Torvalds的传记

2008-01-25

清华大学严蔚敏数据结构习题集(C版)答案

清华大学严蔚敏数据结构习题集(C版)答案

2008-01-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除