让Tiny服务器运行起来

让Tiny服务器运行起来

之前写了《深入理解计算机系统》一书中的Tiny服务器的源码解析,但是书中并没有介绍如何运行Tiny,下面就介绍下怎么让Tiny运行起来。

Tiny的源文件有tiny.c、csapp.c和csapp.h三个。另外要在根目录下新建cgi-bin目录用于存放CGI程序。

方法一:

1.将所有源文件tiny.c、csapp.c和csapp.h放在同一个目录下。另外在同一目录下放置photo.jpg作为测试文件。使用命令:

$gcc -o tiny tiny.c csapp.c -lpthread

  注:加-lpthread是因为csapp.c中有些函数用了多线程库

2.将测试用CGI程序放到cgi-bin目录下,并编译成可执行程序

$gcc -o adder adder.c

3.运行Tiny程序,并指定端口号(1024–49151可用,其它为知名端口)

$./tiny 1024

4.现在Tiny已经运行起来了,打开浏览器就可以访问了

访问静态内容

访问动态内容

方法二:使用Makefile完成Tiny的编译链接:

前一段时间看过Makefile的一些知识,所以我就试一下用make命令来运行Tiny。

1.与方法一不同的是,在工作目录下新建include目录,把csapp.h放置到该目录下。然后编写Makefile如下

CFLAGS= -Wall -g -I./include
LIBS=-lpthread

tiny: tiny.o csapp.o
    cc -o tiny tiny.o csapp.o $(LIBS)

clean:
    rm *.o tiny 

  Makefile中使用CFLAGS设置编译参数并指定头文件的位置为./include。用LIBS指定要链接的库。

2.在工作目录中输入命令make,即可完成Tiny的编译链接。

3.后续的操作与方法一是一样的,不再赘述

时间: 2024-07-31 00:01:00

让Tiny服务器运行起来的相关文章

javascript-图片横向无缝隙滚动(可在服务器运行)

前两次弄'图片横向滚动'javascript,在本地上运行得很美,可是一上到我们学校后台的服务器,就有很多问题,这个算是行的了. css代码: 1 <style type="text/css"> 2 .scroll_div { 3 width: 1000px; 4 height: 250px; 5 margin: 0 auto; 6 overflow: hidden; 7 white-space: nowrap; 8 background: #ffffff; 9 } 10

ZooKeeper做独立服务器运行(下)

ZooKeeper做独立服务器运行(下) 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 四.ZooKeeper Java客户端连接后的命令概述 键入help,可以看到有如下命令: connecthost:port getpath [watch] lspath [watch] setpath data [version] rmrpath delquota[-n|-b] path quit printwatcheson|off create[-s] [

一般服务器运行不正常有哪些因数引起

在使用服务器过程中,服务器不能正常运行这个问题相信很多企业都遇到过,那么是不是服务器出现问题就要找IDC运营商?一切都是IDC运营商的责任呢?下面就给大家简单分析服务器不正常运行的原因. 1.服务器所在的机房设备出现故障 服务器所在机房设备偶尔的故障问题,会造成服务器运行异常.成立多年的数据中心机房服务器硬件设备都是多次使用过的,所以租用服务器时,除了新机房或是新 换的机器外,一般来说,IDC运营商所给到用户的新机并不是说配件是全新的,不可避免会出现服务器硬件损坏致使服务器无法正常使用的情况,但

(一)JAVA项目(非web项目)部署到windows服务器运行

[转]http://blog.csdn.net/tracy19880727/article/details/11205063 一般服务器运行的几乎都是web项目,今天遇到一个问题,把写好的Java项目部署到windows服务器上运行, 如果没有依赖的jar包且只有一个包含main方法的java类,那么直接把java类放服务器上通过dos窗口执行(dos 窗口命令如下:cd 到该.class文件所在目录,然后执行java .class文件名),但是如果包含非JDK自带的第三方 jar包或者多个ja

升级生产服务器运行环境来发布网站

生产服务器运行环境: 操作系统:Windows Server 2008 Web服务器:IIS 7.0 任务:发部ASP.NETT程序 准备工作: 该发布程序是在.net 4.0的开发环境运行,但我们的服务器是.net 2.0的运行环境 在发布该程序之前,必须要安装.net4.0环境,并配置好IIS7.0环境 操作步骤: 1.下载.net 4.0安装: https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=17718 2.发布程

服务器运行环境(LNMP)安装说明

服务器运行环境(LNMP)安装说明 先下载文件environment.tar,将文件上传到服务器. 使用命令解压文件,tar xvf environment.tar. cd进入解压目录,运行命令sh install.sh. 安装完成后台打开浏览器访问http://ip/,访问成功表示安装完成. 软件版本: memcached 1.4.25 mysql 5.6 php 5.6 Tengine 2.1.2 安装后目录说明: tengine /use/local/nginx php /use/loca

ZooKeeper做独立服务器运行(上)

ZooKeeper做独立服务器运行(上) 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 一.ZooKeeper安装及配置 版本:ZooKeeper v3.4.6稳定版 要设置ZooKeeper以单独服务器的模式运行是非常直接的.服务器包含在单个的JAR文件内,因此安装就只需创建一个配置文件. 一旦下载了ZooKeeper稳定版,那么解压它,并进入ZooKeeper的根目录. $ wgethttp://mirror.bit.edu.cn/apache

Tiny语言运行环境TM机源代码

TM机就是TINY语言编译器编译之后的汇编代码的运行环境.TM机的主要功能是将TM的汇编代码读入和执行,它具有一般计算机类似的精简指令级RISC.TM汇编语言和一般的Intel汇编语言差不多,包括寄存器寻址.操作符等,很容易理解.一条典型的代码如:LD 0,10(1),这里面10(1)就是寄存器1中地址为基址,10为偏移地址,寻址结果放入寄存器0.三目操作符:MUL 0,1,0表示将寄存器1和寄存器2的相乘结果放入寄存器0.接下来开始一部分一部分的分析TM机的源代码. TM源代码如下: /***

Tiny模板运行器

说到模板开发,当然就离不开要调试,要运行.一般情况下模板语言都是由Java程序驱动跑的,因此,每次都需要搞一个Java类来驱动它,才能运行出结果.有没有更简洁的方式呢?当然是有的,Tiny框架提供了强大的Eclipse插件:模板运行器,用户通过它可以达到快速开发和调试模板语言.         前提条件 在Eclipse环境想要使用Tiny模板运行器,需要满足以下条件: 正确安装Tiny框架提供的Eclipse插件,这是基础要求. 在想要使用模板运行器的工程,pom.xml文件引入依赖org.t