摘要: 为了记忆深刻:我用文字再叙述一遍1.浏览器将请求的信息封装成Http协议报文,发送给服务器。2.IIS负责监听80端口,接受浏览器的报文,如果是静态文件,从服务器找到静态文件转换成 byte[] 然后通过代理socket响应给 浏览器。3.如果是动态文件 IIS处理不了 交给aspnet_isapi.dll扩展,扩展将请求交给 .NetFramework的CLR中处理(即asp.net生命周期)。第二步IIS的核心进程inetinfo.exe交给aspnet_isapi.dll扩展启动CLR(workProcess进程是,aspnet_wp.exe(xpIIS5),w3wp.exe(IIS6, 阅读全文
posted @ 2012-09-26 21:36 51秒懂 阅读(1314) 评论(0) 推荐(0) 编辑
摘要: 对IIS只有表面的理解 现在模拟一下IIS的内部原理:View Code 1 public int ServerScoket { get; set; } 2 private void btnStart_Click(object sender, EventArgs e) 3 { 4 IPAddress ipAddress = IPAddress.Parse(this.txtIP.Text); 5 IPEndPoint endpoint = new IPEndPoint(ipAddress, int... 阅读全文
posted @ 2012-09-26 19:57 51秒懂 阅读(3154) 评论(8) 推荐(5) 编辑
摘要: 如果线程设置为前台线程,那么必须执行完所有的代码程序才可能退出如果将线程设置为后台线程,那么关闭主界面,程序也就退出了 阅读全文
posted @ 2012-09-26 14:51 51秒懂 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 一般的一个可执行文件的内容都包含一个PE头,系统根据PE的信息找到入口函数,通过执行入口函数中的代码来执行可执行程序。托管程序的文件相对于非托管程序还包含了一个CLR表头文件以及其他CLR需要的信息。1.非托管程序的执行过程在非托管程序中,可执行里面保存的是机器代码,CPU可以直接加载并执行,当系统加载了可执行程序后,系统就将可执行文件的段基址加上偏移地址形成实际的物理地址,并直接加载到内存中运行。2.托管程序的执行过程托管程序的可执行文件中,包括是中间语言以及元数据,当然不能直接运行,必须启动CLR,由CLR对中间语言进行即时编译机器代码,并加载到内存里面执行(具体过程“程序在进入入口函数前 阅读全文
posted @ 2012-09-26 07:56 51秒懂 阅读(473) 评论(0) 推荐(0) 编辑