2005年01月24日

[组图]来教你们打领带,MM,GG必学

来教你们打领带,MM,GG必学-转自网络


来教你们打领带,MM,GG必学
1、平结
  平结为最多男士选用的领结打法之一,几乎适用于各种材质的领带。要诀:领结下方所形成的凹洞需让两边均匀且对衬。

2、交叉结
  这是对于单色素雅质料且较薄领带适合选用的领结,对于喜欢展现流行感的男士不妨多加使用“交叉结”。

3、双环结
  一条质地细致的领带再搭配上双环结颇能营造时尚感,适合年轻的上班族选用。该领结完成的特色就是第一圈会稍露出于第二圈之外,可别刻意给盖住了。

4、 温莎结
  温莎结适合用于宽领型的衬衫,该领结应多往横向发展。应避免材质过厚的领带,领结也勿打得过大。

5、双交叉结
  这样的领结很容易让人有种高雅且隆重的感觉,适合正式之活动场合选用。该领结应多运用在素色且丝质领带上,若搭配大翻领的衬衫不但适合且有种尊贵感。

6、亚伯特王子结
  适用於浪漫扣领及尖领系列衬衫
  搭配浪漫质料柔软的细款领带
  正确打法是在宽边先预留较长的空间
  并在绕第二圈时尽量贴合在一起
  即可完成此一完美结型

7、四手结(单结)
  是所有领结中最容易上手的,适用於各种款式的浪漫系列衬衫及领带

8、浪漫结
  浪漫是一种完美的结型
  故适合用於各种浪漫系列的领口及衬衫
  完成後将领结下方之宽边压以绉摺可缩小其结型
  窄边亦可将它往左右移动使其小部份出现於宽边领带旁

9、简式结(马车夫结)
  适用於质料较厚的领带
  最适合打在标准式及扣式领口之衬衫
  将其宽边以180度由上往下翻转
  并将折叠处隐藏於後方
  待完成後可再调整其领带长度
  是最常见的一种结形

10、十字结(半温莎结)
  此款结型十分优雅及罕见
  其打法亦较复杂
  使用细款领带较容易上手
  最适合搭配在浪漫的尖领及标准式领口系列衬

收藏下来,自己学习一下啦!~
自力更生,丰衣足食!

2005年01月22日

【软考】2004年下半年软件设计师(高级程序员)下午试题

作者:老顽童整理校对 出处:老顽童网站

试题一(15分)
 
 阅读下列说明和数据流图,回答问题1至问题3,将解答填入答题纸的对应栏内。
某图书管理系统的主要功能是图书管理和信息查询。对于初次借书的读者,系统自动生成读者号,并与读者基本信息(姓名、单位、地址等)一起写入读者文件。
系统的图书管理功能分为四个方面:购入新书、读者借书、读者还书以及图书注销。
  1、购入新书时需要为该书编制入库单。入库单内容包括图书分类目录号、书名、作者、价格、数量和购书日期,将这些信息写入图书目录文件并修改文件中的库存总量(表示到目前为止,购入此种图书的数量)。
 
 2、读者借书时需填写借书单。借书单内容包括读者号和所借图书分类目录号。系统首先检查该读者号是否有效,若无效,则拒绝借书;若有效,则进一步检查该
读者已借图书是否超过最大限制数(假设每位读者能同时借阅的书不超过5本),若已达到最大限制数,则拒绝借书;否则允许借书,同时将图书分类目录号、读者
号和借阅日期等信息写入借书文件中。
  3、读者还书时需填写还书单。系统根据读者号和图书分类目录号,从借书文件中读出与该图书相关的借阅记录,标明还书日期,再写回到借书文件中,若图书逾期,则处以相应的罚款。
  4、注销图书时,需填写注销单并修改图书目录文件中的库存总量。 系统的信息查询功能主要包括读者信息查询和图书信息查询。其中读者信息查询可得到读者的基本信息以及读者借阅图书的情况;图书信息查询可得到图书基本信息和图书的借出情况。
  图书管理系统的顶层图如图1-1所示;图书管理系统的第0层DFD图如图1-2所示 其中,加工2的细化图如图1-3所示。
 【数据流图1-1】


图1-1图书管理系统顶层图

 【数据流图1-2】


图1-2图书管理系统第0层DFD图

 【数据流图1-3】

 【问题1】(2分)
  数据流图1-2中有两条数据流是错误的,请指出这两条数据流的起点和终点。
 【问题2】(6分)
  数据流图1-3中缺少三条数据流,请指出这三条数据流的起点和终点。
 【问题3】(7分)
  根据系统功能和数据流图填充下列数据字典条目中的(1)和(2):
  查洵请求信息=[查询读者请求信息|查询图书请求信息]
  读者情况=读者号+姓名+所在单位+{借书情况}
  管理工作请求单=__(1)__
  入库单=__(2)__

试题二(15分)
  阅读下列说明和E-R图,回答问题1至问题3,将解答填入答题纸的对应栏内。
 【说明】
  某网上订书系统的E-R图(已消除了不必要的冗余)如图2-1所示(图中没有标出主码)。图中实体的说明如表2-1所示。相关属性说明如表2-2所示。

表2-1


实体

说明

 Books

 书店内的书

 Gustomers

 与书店有业务的顾客

 Orders

 顾客向书店下的购书单

表2-2


主要属性

说明

 qty_in_stock

 图书库存量

 year_published

 出版日期

 ordernum

 购书单编号

 cid

 顾客编号

 bid

 惟一表示每种图书的编码

 cardnum

 顾客信用卡号码

 orderdate

 填购书单日期

 qty

 订购某种图书的数量

 ship_date

 发货日期

  一个顾客可以在同一天填写多张购书单,每张购书单上可填写多种图书,每种图书可以订购多本,bid相同的图书在同一张购书单上不能出现多次。
  注:为简化起见,不考虑信用卡号码泄漏所带来的安全性等问题。
 【图2-1】

 【问题1】(9分)
  根据E-R图中给出的词汇,按照“有关模式名(属性,属性,…)”的格式,将此E-R图转换为4个关系模式,并指出每个关系模式中的主码和外码,其中模式名根据需要取实体名或联系名。
  [问题2](2分)
 
 创建Customers表时,cid使用INTEGER数据类型,cname使用CHAR(80)数据类型,address使用CHAR(200)数据
类型,cardnum使用CHAR(16)数据类型并且要求此列值惟一。请在下列用于创建表Customers的SQL语句空缺处填入正确的内容。
  CREATE TABLE Customers(cid INTEGER NOT NULL,
  cname  CHAR(80) NOT NULL,
  address CHAR(200),
  cardnum CHAR(16) NOT NULL,
  __(1)__,
  __(2)__
 【问题3】(4分)
  如下的SQL语句是书店用于查询“所有订购了bid为‘123-456’图书的用户订购其他图书的情况”的不完整语句,请在空缺处填入正确的内容。
  Select bid
  From orderlist A
  Where not exists(Select * from Orders B
  where A. ordernum = B.ordernum and B.cid __(3)__
  (Select bid from orderlist C,orders D
  where __(4)__.bid=’123-456′
  and __(5)__=D.ordernum))

试题三(15分)
  阅读下列说明和数据流图,回答问题1和问题3,将解答填入答题纸的对应栏内。
 【说明】
  某指纹门禁系统结构如图3-1所示,其主要部件有:主机(MainFrname)、锁控器(LockController)、指纹采集器(FingerReader)和电控锁(Lock)。
  (1) 系统中的每个电控锁都有一个惟一的编号。锁的状态有两种:“已锁住”和“未锁住”。
  (2) 在主机上可以设置每把锁的安全级别以及用户的开锁权限。只有当用户的开锁权限大于或等于锁的安全级别并且锁处于“已锁住”状态时,才能将锁打开。
  (3) 用户的指纹信息、开锁权限以及锁的安全级别都保存在主机上的数据库中。
  (4) 用户开锁时,只需按一下指纹采集器。指纹采集器将发送一个中断事件给锁控器,锁控器从指纹采集器读取用户的指纹并将指纹信息发送到主机,主机根据数据库中存储的信息来判断用户是否具有开锁权限,若有且锁当前处于“已锁住”状态,则将锁打开;否则系统报警。
  该系统采用面向对象方法开发,系统中的类以及类之间的关系用UML类图表示,图3-2是该系统类图的一部分;系统的动态行为采用UML序列图表示,图3-3是用户成功开锁的序列图。

 【问题1】(6分)
  图3-2是该系统类图的一部分,依据上述说明中给出的术语,给出类Look的主要属性。
 【问题2](5分)
  依据上述说明中给出的词语,将图3-3中的(1)~(5)处补充完整。
 【问题3】(4分)
组装(Composition)和聚集(Aggregation)是UML中两种非常重要的关系。请说明组装和聚集分别表示什么含义?两者的区别是什么?

试题四(15分)
  阅读下列说明和数据流图,回答问题1和问题3,将解答填入答题纸的对应栏内。
 【说明】
  在并发系统设计中,通过对信号量s的P、V操作实现进程的同步与互斥控制。
  P(S):S:=S-1,若S≥0,则执行P操作的进程继续执行;若S<0,则置该进程为阻塞状态,并将其插入阻塞队列。
  V(S):S:=S+1,若S>0,则执行V操作的进程继续执行;若S≤0,则从阻塞队列唤醒一个进程,并将其插入就绪队列,然后执行V操作的进程继续执行。
 【问题1】(4分)
 
 在某并发系统中,有一个发送进程A、一个接收进程B、一个环形缓冲区BUFFER、信号量S1和S2。发送进程不断地产生消息并写入缓冲区
BUFFER,接收进程不断地从缓冲区BUFFER取消息。假设发送进程和接收进程可以并发地执行,那么,当缓冲区的容量为N时,如何使用P、V操作才能
保证系统的正常工作。发送进程A和接收进程B的工作流程如图4-1所示。请在图4-1中的空(1)~(4)处填入正确的内容。


 【问题2】(5分)
 
 若系统中有多个发送进程和接收进程,进程间的工作流程如图4-2所示,其中空(1)~(4)的内容与图4-1相同。发送进程产生消息并顺序地写入环形缓
冲区BUFFER,接受者进程顺序地从BUFFER中取消息,且每条消息只能读取一次。为了保证进程间的正常通讯,增加了信号量SA和SB。
  ① 请说明信号量SA和SB的物理意义,并在图4-2中的空(5)和空(6)处填入正确的内容。
  ② 请从图4-2的(a)~(1)中选择四个位置正确地插入P(SA)、V(SA)、P(SB)、V(SB)。
 【图4-2]】


 【问题3】(6分)
 
 设系统中只有进程A和进程B,除了互斥地使用CPU和打印机R外,进程A和B不使用其他资源。另外,进程B的优先级比A高,而进程A先于B准备好。进程
A和B的执行情况如图4-3所示,其中粗实线表示进程在执行中,细实线表示打印机R在使用中。(每个进程具有三种状态:运行,就绪和阻塞)
  请说明进程A和B在图4-3所示的T1、T2、T3、T4时刻所处的状态;若是阻塞状态,请说明阻塞原因。
 【图4-3】

试题五(15分,每空3分)
  阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。
 【说明】
  函数int Toplogical (LinkedWDigraph G)的功能是对图G中的顶点进行拓扑排序,并返回关键路径的长度。其中图G表示一个具有n个顶点的AOE-网,图中顶点从1~n依次编号,图G的存储结构采用邻接表表示,其数据类型定义如下:
  typedef struct Gnode{     /*邻接表的表结点类型*/
   int adjvex;        /*邻接顶点编号*/
   int weight;        /*弧上的权值*/
   struct Gonde*nextare;    /*指示下一个弧的结点*/
  }Gnode;

  typedef struct Adjlist{    /*邻接表的头结点类型*/
   char vdata;          /*顶点的数据信息*/
   struct Gnode*Firstadj;   /*指向邻接表的第一个表结点*/
  }Adjlist;

  typedef struct LinkedWDigraph{  /*图的类型*/
   int n ,e;          /*图中顶点个数和边数*/
   struct Adjlist head;     /*指向图中第一个顶点的邻接表的头结点*/
  }LinkedWDigraph;
  例如,某AOE-网如图5-1所示,其邻接表存储结构如图5-2所示。

  【函数】
  int Toplogical(LinkedWDigraph G)
  {Gnode *p;
      int j,w,top=0;
      int Stack,ve,*indegree;
      ve=(int )mallloc(G.n+1)*sizeof(int));
      indegree=(int*)malloc((G.n+1)*sizeof(int)); /*存储网中个顶点的入度*/
      Stack=(int*)malloc((G.n+1)*sizeof(int));   /*存储入度为0的顶点的编号*/
      If (!ve||!indegree||!Stack)            exit(0);
      for (j=1;j<=G.n;j++){
     ve[j]=0;indegree[j]=0;
    }                /*for*/
    for (j=1;j<=G.n;j++) {      /*求网中各顶点的入度*/
       p=G.head[j].Firstadj;
       while (p) {
      __(1)__;          p=p->nextarc;
     }               /*while*/
    }         /*for*/
    for (j=1;j<=G.n;j++)                /求网中入度为0的顶点并保存其编号*/
    if (!indegree[j]) Stack[++top]=j;
    while (top>0){
     w=__(2)__;
     printf(“%c”,G.head[w].vdata);
     p=G.head[w].Firstadj;
     while (p) {
      __(3)__;
      if (!indegree[p->adjvex])
       Stack[++top]=p->adjvex;
      If(__(4)__)
       Ve[p->adjvex]=ve[w]+p->weight;
      P=p->nextarc;
     }/*while*/
     return(5);
    }       /*Toplogical*/

试题六(15分,每空3分)
  阅读下列函数说明和C++代码,将应填入(__n__)处的字句写在答题纸的对应栏内。
 【说明】
  通常情况下,用户可以对应用系统进行配置,并将配置信息保存在配置文件中,应用系统在启动时首先将配置文件加载到内存中,这些内存配置信息应该有且仅有一份。
  下面的代码应用了单身模式(Singleton)以保证Configure类只能有一个实例。这样,Configure类的使用者无法定义该类的多个实例,否则会产生编译错误。
 【C++代码】
  #include <iostream.h>
  class Configure {
   __(1)__;
   Configure() {};            //构造函数
   Public;
   Static Configure*Instance();
   Public;
   Int GetConfigureData() {return data;} //获取配置信息
   Int SetConfigureDate(int m_data)
   { data=m_data;       return data; }   //设置配置信息
   private:
   static Configure*_instance;
   int data;                          //配置信息
  };
  __(2)__=NULL;
  Configure * Configure;;Instance() {
   If (_instance= =NULL) {
    _instance=__(3)__;
   //加载配置文件并设置内存配置信息,此处省略
   }
   return__(4)__;
  }
  void main() {
   Configure*t=NULL;
   t=__(5)__;
   int d=t->GetConfigureData();
   //获取配置信息后进行其它工作,此处省略
  }

试题七(15分,每空3分)
 【说明】
  类Queue表示队列,类中的方法如下表所示。

isEmpty()

判断队列是否为空。如果队列不为空,返回true;否则,返回false。

Enpueue(object newNode)

入队操作。

Dequeue()

出队操作。如果队列为空,则抛出异常。

  类Node表示队列中的元素;类emptyQueueException给出了队列操作中的异常处理操作。
 【JAVA代码】
  public class testmain { //主类
   public static viod main (string args[]){
    Queue q= new queue;
    q.enqueue(“first!”);
    q.enqueue(“second!”);
    q.enqueue(“third!”);
    __(1)__  {
     while(true)
     system.out.println(q.dequeue());
    }
    catch(__(2)__){}
   }

   public class queue {   //队列
    node m_firstnode;
    public queue(){m_firstnode=null;}
    public Boolean isempty(){
    if (m_firstnode= =null) return true;
    else return false;
    }
    public viod enqueue(object newnode){  //入队操作
    node next = m_firstnode;
    if (next = = null) m_firstnode=new node(newnode);
    else {
     while(next.getnext()!=null) next=next.getnext();
     next.setnext(new node(newnode));
    }
   }
   public object dequeue() __(3)__ {      //出队操作
    object node;
    if (is empty())
    __(4)__;                 //队列为空,抛出异常
    else {
     node =m_firstnode.getobject();
     m_firstnode=m_firstnode.getnext();
     return node;
    }
   }
  }

  public class node{
   object m_data;
   node m_next;
   public node(object data)     {m_data=data;  m_next=null;}
   public node(object data,node next)   {m_data=data;  m_next=next;}
   public void setobject(object data)   {m_data=data; }
   public object getobject(object data)  {return m_data;}
   public void setnext(node next)   {m_next=next;}
   public node getnext()     {return m_next;}
  }
  public class emptyqueueexception extends   (5)  {
   public emptyqueueexception() {
     system.out.println(“队列已空!”);
   }
  }

【软考】2004年下半年软件设计师上午试卷

全国计算机技术与软件专业技术资格(水平)考试
2004年下半年 软件设计师上午试卷

  ●内存按字节编址,地址从A4000H到CBFFFH,共有_(1)_字节。若用存储容量为32K*8bit的存储器芯片构成该内存,至少需要_(2)_ 片。
  (1)A.80K   B.96K   C.160K   D.192K
  (2)A.2    B.5    C.8     D.10

  ●中断响应时间是指_(3)_。
  (3)A.从中断处理开始到中断处理结束所用的时间
    B.从发出中断请求到中断处理结束所用的时间
    C.从发出中断请求到进入中断处理所用的时间
    D.从中断处理结束到再次中断请求的时间

  ●若指令流水线把一条指令分为取指、分析和执行三部分,且三部分的时间分别是t取指=2ns ,t分析=2ns,t执行=1ns。则100条指令全部执行完毕需_(4)_ns。
  (4)A.163   B.183   C.193   D.203

  ●在单指令流多数据流计算机(SIMD)中,各处理单元必须 _(5)_。
  (5)A.以同步方式,在同一时间内执行不同的指令
    B.以同步方式,在同一时间内执行同一条指令
    C.以异步方式,在同一时间内执行不同的指令
    D.以异步方式,在同一时间内执行同一条指令

  ●单个磁头在向盘片的磁性涂层上写入数据时,是以_(6)_方式写入的。
  (6)A.并行     B.并一串行    C.串行     D.串一并行

  ●容量为64块的Cache采用组相联方式映像,字块大小为128个字,每4块为一组。若主存容量为4096块,且以字编址,那么主存地址应为_(7)_位,主存区号应为_(8)_位。
  (7)A.16      B.17       C.18      D.19
  (8)A.5      B.6        C.7       D.8

  ●软件开发中的瀑布模型典型地刻画了软件生存周期的阶段划分,与其最相适应的软件开发方法是_(9)_。
  (9)A.构件化方法  B.结构化方法   C.面向对象方法 D.快速原型方法

  ●下述任务中,不属于软件工程需求分析阶段的是_(10)_ 。
  (10)A.分析软件系统的数据要求     B.确定软件系统的功能需求
    C.确定软件系统的性能要求     D.确定软件系统的运行平台

  ●软件设计的主要任务是设计软件的结构、过程和模块,其中软件结构设计的主要任务是要确定_(11)_。
  (11)A.模块间的操作细节        B.模块间的相似性
    C.模块间的组成关系        D.模块的具体功能

  ●系统测试是将软件系统与硬件、外设和网络等其他因素结合,对整个软件系统进行测试。_(12)_不是系统测试的内容。
  (12)A.路径测试  B.可靠性测试   C.安装测试    D.安全测试

  ●项目管理工具中,将网络方法用于工作计划安排的评审和检查的是_(13)_。
  (13)A.Gantt图   B.PERT网图    C.因果分析图   D.流程图

  ●在结构化分析方法中,数据字典是重要的文档。对加工的描述是数据字典的组成内容之一,常用的加工描述方法_(14)_。
  (14)A.只有结构化语言         B.有结构化语言和判定树
    C.有结构化语言、判定树和判定表  D.有判定树和判定表

  ●CMM模型将软件过程的成熟度分为5个等级。在_(15)_使用定量分析来不断地改进和管理软件过程。
  (15)A.优化级   B.管理级     C.定义级     D.可重复级

  ●在面向数据流的设计方法中,一般把数据流图中的数据流划分为_(16)_两种。
  (16)A.数据流和事务流         B.变换流和数据流
    C.变换流和事务流         D.控制流和事务流

  ●_(17)_属于第三层VPN协议。
  (17)A.TCP     B.IPsec      C.PPOE      D.SSL

  ●下图所示的防火墙结构属于_(18)_。
  (18)A.简单的双宿主主机结构        B.单DMZ防火墙结构
    C.带有屏蔽路由器的单网段防火墙结构  D.双DMZ防火墙结构

  ●电子商务交易必须具备抗抵赖性,目的在于防_(19)_。
  (19)A.一个实体假装成另一个实体      B.参与此交易的一方否认曾经发生过此次交易
    C.他人对数据进行非授权的修改、破坏  D.信息从被监视的通信过程中泄漏出去

  ●知识产权一般都具有法定的保护期限,一旦保护期限届满,权利将自行终止,成为社会公众可以自由使用的知识。_(20)_权受法律保护的期限是不确定的,一旦为公众所知悉,即成为公众可以自由使用的知识。
  (20)A.发明专利     B.商标      C.作品发表    D.商业秘密

  ●甲、乙两人在同一时间就同样的发明创造提交了专利申请,专利局将分别向各申请人通报有关情况,并提出多种解决这一问题的办法,不可能采用_(21)_的办法。
  (21)A.两申请人作为一件申请的共同申请人
    B.其中一方放弃权利并从另一方得到适当的补偿
    C.两件申请都不授予专利权      D.两件申请都授予专利权

  ● 《计算机软件产品开发文件编制指南》》(GB 8567-88)是_(22)_ 标准。
  (22)A.强制性国家    B.推荐性国家   C.强制性行业   D.推荐性行业

 
 ●虚拟存储管理系统的基础是程序的_(23)_理论,这个理论的基本含义是指程序执行时往往会不均匀地访问主存储器单元。根据这个理论,Denning
提出了工作集理论。工作集是进程运行时被频繁地访问的页面集合。在进程运行时,如果它的工作集页面都在_(24)_内,能够使该进程有效地运行,否则会出
现频繁的页面调入/调出现象。
  (23)A.全局性      B.局部性     C.时间全局性   D.空间全局性
  (24)A.主存储器     B.虚拟存储器   C.辅助存储器   D.u盘

  ●在UNIX操作系统中,若用户键入的命令参数的个数为1时,执行cat$1命令;若用户键入的命令参数的个数为2时,执行cat>>$2<$1命令。请将下面所示的Shell程序的空缺部分补齐。
  case_(25)_in
   1)cat$1;;
   2)cat>>$2<$1;;
   *)echo ‘default…’
  esac
  (25)A.$$        B.$@       C.$#       D.$*

  ●进程PA不断地向管道写数据,进程PB从管道中读数据并加工处理,如下图所示。如果采用PV操作来实现进程PA和进程PB间的管道通信,并且保证这两个进程并发执行的正确性,则至少需要_(26)_。
  (26)A.1个信号量,信号量的初值为0
    B.2个信号量,信号量的初值分别为0、1
    C.3个信号量,信号量的初值分别为0、0、1
    D.4个信号量,信号量的初值分别为0、0、1、1

  ●假设系统中有三类互斥资源R1、R2和R3,可用资源数分别为9、8和5。在To时刻系统中有P1、P2、P3、P4和P5五个进程,这些进程对资源的最大需求量和已分配资源数如下表所示。如果进程按_(27)_序列执行,那么系统状态是安全的。   


资源 最大需求量 已分配资源数
进程 R1 R2 R3 R1 R2 R3
P1 6 5 2 1 2 1
P2 2 2 1 2 1 1
P3 8 0 1 2 1 0
P4 1 2 1 1 2 0
P5 3 4 4 1 1 3

  (27)A.P1→P2→P4→P5→P3     B.P2→P1→P4→P5→P3
    C.P2→P4→P5→P1→P3     D.P4→P2→P4→P1→P3

  ●某一非确定性有限自动机(NFA)的状态转换图如下图所示,与该NFA等价的正规式是_(28)_,与该NFA等价的DFA是_(29)_。

  (28) A.0*|(0|1)0   B.(0|10)*   C.0*((011)0)*   D.0*(10)*
  

  ●在UML提供的图中,可以采用_(30)_对逻辑数据库模式建模;_(31)_用于接口、类和协作的行为建模,并强调对象行为的事件顺序; _(32)_用于系统的功能建模,并具强调对象间的控制流。
  (30)A.用例图   B.构件图   C.活动图    D.类图
  (31)A.协作图   B.状态图   C.序列图    D.对象图
  (32)A.状态图   B.用例图   C.活动图    D.类图

  ●在一棵完全二叉树中,其根的序号为1,_(33)_可判定序号为p和q的两个结点是否在同一层。
  (33)A.Llog2P」=Llog2q」     B.log2P = log2q
    C.Llog2P」+1=Llog2q」    D.Llog2P」=+Llog2q」+1

  ●堆是一种数据结构,_(34)_是堆。
  (34)A.(10,50,80,30,60,20,15,18) B.(10,18,15,20,50,80,30,60)
    C.(10,15,18,50,80,30,60,20) D.(10,30,60,20,15,18,50,80)

  ●_(35)_从二叉树的任一结点出发到根的路径上,所经过的结点序列必按其关键字降序排列。
  (35)A.二叉排序树 B.大顶堆    C.小顶堆    D.平衡二叉树

  ●若广义表L=((1,2,3)),则L的K度和深度分别为_(36)_。
  (36)A.1和1    B.1和2     C.1和3     D.2和2

  ●若对27个元素只进行三趟多路归并排序,则选取的归并路数为_(37)_。
  (37)A.2     B.3      C.4      D.5

  ●_(38)_是多媒体内容描述接口标准。
  (38)A.MPEG-1   B.MPEG-2    C.MPEG-4    D.MPEG-7

  ●未经压缩的数字音频数据传输率的计算公式为_(39)_。
  (39)A.采样频率(Hz)*量化位数(bit)*声道数*1/8
    B.采样频率(Hz)*量化位数(bit)*声道数
    C.采样频率(Hz)*量化位数(bit)*1/8
    D.采样频率(Hz)*量化位数(bit)*声道数*1/16

  ●彩色打印机中所采用的颜色空间是_(40)_。
  (40)A.RGB彩色空间 B.CMY彩色空间 C.YUV彩色空间 D.HSL彩色空问

  ●MPEG视频中的时间冗余信息可以采用_(41)_的方法来进行压缩编码。
  (41)A.帧间预测和变换编码     B.霍大曼编码和运动补偿
    C.变换编码和行程编码     D.帧间预测和运动补偿

 
 ●假定每一车次具有唯一的始发站和终点站。如果实体“列车时刻表”属性为车次、始发站、发车时间、终点站、到达时间,该实体的主键是_(42)_;如果
实体“列车运行表”属性为车次、日期、发车时间、到达时间,该实体的主键是_(43)_。通常情况下,上述“列车时刻表”和“列车运行表”两实体型间_
(44)_联系。
  (42)A.车次    B.始发站    C.发车时间  D.车次,始发站
  (43)A.车次    B.始发站    C.发车时间  D.车次,日期
  (44)A.不存在   B.存在一对一  C.存在一对多 D.存在多对多

  ●关系模式R(U,F),其中U=(W,X,Y,Z),F={WX→Y,W→X,X,→Z,yVw}。关系模式R的候选码是_(45)_,_(46)_是无损连接并保持函数依赖的分解。
  (45)A.W和Y    B.WY      C.WX     D.WZ
  (46)A.ρ={R1(WY),R2(XZ)}     B.ρ={R1(WZ),R2(XY)}
    C.ρ={R1(WXY),R2(XZ)}     D.ρ={R1(WX),R2(YZ)}

  ●类的实例化过程是一种实例的合成过程,而不仅仅是根据单个类型进行的空间分配、初始化和绑定。指导编译程序进行这种合成的是_(47)_。
  (47)A.类层次结构 B.实例的个数  C.多态的种类 D.每个实例的初始状态

  ●重置的基本思想是通过_(48)_机制的支持,使得子类在继承父类界面定义的前提下,用适合于自己要求的实现去置换父类中的相应实现。
  (48)A.静态绑定  B.对象引用   C.类型匹配  D.动态绑定

  ●OMT定义了三种模型来描述系统。_(49)_可以用状态图来表示;_(50)_可以用数据流图来表示。_(51)_为上述两种模型提供了基本的框架。
  (49)A.对象模型  B.功能模型   C.动态模型  D.类模型
  (50)A.对象模型  B.功能模型   C.动态模型  D.类模型
  (51)A.对象模型  B.功能模型   C.动态模型  D.类模型

  ●采用动态规划策略求解问题的显著特征是满足最优性原理,其含义是_(52)_。
  (52)A.当前所做出的决策不会影响后面的决策
    B.原问题的最优解包含其子问题的最优解
    C.问题可以找到最优解,但利用贪心法不能找到最优解
    D.每次决策必须是当前看来最优的决策才可以找到最优解

  ●下面函数中渐进时间最小的是_(53)_。
  (53)A.T1(n)=n+nlogn        B.T2(n)=2n+nlogn 
    C.T3(n)=n2—logn        D.T4(n)=n+100logn

  ●下面的程序段违反了算法的_(54)_原则。
  Void sam()
  { int n=2;
   while(!odd(n))
   n+=2;
   printf(n);
  }
  (54)A.有穷性    B.确定性   C.可行性    D.健壮性

  ●拉斯维加斯(Las Vegas)算法是一种常用的_(55)_算法。
  (55)A.确定性    B.近似    C.概率     D.加密

  ●在分支-限界算法设计策略中,通常采用_(56)_搜索问题的解空间。
  (56)A.深度优先   B.广度优先  C.自底向上   D.拓扑序列

  ●在下列算法设计方法中,_(57)_在求解问题的过程中并不从整体最优上加以考虑,而是做出在当前看来是最好的选择。利用该设计方法可以解决 _(58)_问题。
  (57)A.分治法    B.贪心法   C.动态规划方法 D.回溯法
  (58)A.排序     B.检索    C.背包     D.0/1背包

  ●以关键字比较为基础的排序算法在最坏情况下的计算时间下界为O(nlogn)。下面的排序算法中,最坏情况下计算时间可以达到O(nlogn)的是_(59)_;该算法采用的设计方法是_(60)_。
  (59)A.归并排序 B.插入排序 C.选择排序 D.冒泡排序
  (60)A.分治法 B.贪心法 C.动态规划方法 D.回溯法

  ●以太网100BASE-TX标准规定的传输介质是_(61)_ 。
  (61)A.3类UTP    B.5类UTP   C.单模光纤   D.多模光纤

  ●许多网络通信需要进行组播,以下选项中不采用组播协议的应用是 _(62)_。在IPv4中把_(63)_类地址作为组播地址。
  (62)A.VOD      B.Netmeeting C.CSCW     D.FTP
  (63)A.A       B.B      C.D       D.E

  ●将双绞线制作成交叉线(一端按EIA/TIA 568A线序,另一端按EIA/TIA 568B线序),该双绞线连接的两个设备可为_(64)_。
  (64)A.网卡与网卡         B.网卡与交换机
    C.网卡与集线器        D.交换机的以太口与下一级交换机的UPLINK口

  ●以下不属于中间件技术的是 _(65)_ 。
  (65)A.javaRMI    B.CORBA   C.DCOM      D.JavaApplet

 
 ●Networks can be interconnected by different devices in the physical
layer networks can be connected by _(66)_ or hubs .which just move the
bits from one network to an identical network. One layer up we find
bridges and switches which operate at data link layer. They can accept
_(67)_ examine the MAC address and forward the frames to a different
network while doing minor protocol translation in the process in me
network layer ,we have routers that can connect two networks, If two
networks have _(68)_ network layer, the router may be able to translate
between the packer formats. In the transport layer we find transport
gateway, which can interface between two transport connections Finally,
in the application layer, application gateways translate message _(69)_
.As an example, gateways between Internet e-mail and X.400 e-mail must
_(70)_ the e-mail message and change various header fields.
  (66)A.reapers   B.relays    C.packages   D.modems
  (67)A.frimes              B.packets  C.packages   D.cells
  (68)A.special   B.dependent C.similar     D.dissimilar
  (69)A.syntax    B.semantics C.language   D.format
  (70)A.analyze   B.parse   C.delete    D.create

 
 ● The purpose of the requirements definition phase is to produce a
clear, complete, consistent, and testable _(71)_ of the technical
requirements for the software product.
During the requirements
definition phase, the requirements definition team uses an iterative
process to expand a broad statement of the system requirements into a
complete and detailed specification of each function that the software
must perform and each _(72)_ that it must meet. The starting point is
usually a set of high level requirements from the _(73)_ that describe
the project or problem.
  In either case, the requirements
definition team formulates an overall concept for the system and then
defines _(74)_ showing how the system will be operated publishes the
system and operations concept document and conducts a system concept
review (SCR).
  Following the SCR, the team derives _(75)_
requirements for the system from the high level requirements and the
system and operations concept. using structured or object-oriented
analysis. the team specifies the software functions and algorithms
needed to satisfy each detailed requirement.
  (71)A.function   B.definition   C.specification  D.statement
  (72)A.criterion   B.standard    C.model      D.system
  (73)A.producer   B.customer    C.programmer    D.analyser
  (74)A.rules     B.principles   C.scenarios    D.scenes
  (75)A.detailed   B.outlined    C.total      D.complete

少走弯路的十条忠告(转载)
发信站: BBS 水木清华站 (Sat Jan 22 09:06:19 2005), 站内

【 以下文字转载自 Sales 讨论区 】
发信人: firerat (醉过方知酒浓), 信区: Sales
标  题: 少走弯路的十条忠告(转载)
发信站: BBS 水木清华站 (Thu Jan 20 17:13:22 2005), 站内

 刚刚走上社会的年轻人,充满了蓄势待发的豪情、青春的朝气、前卫的思想,梦
想着丰富的待遇和轰轰烈烈的事业。可是,社会毕竟是一所包罗万象、喧嚣复杂的
大学校,这里没有寒暑假,拒绝虚假和肤浅,更拒绝空想和庸碌,难以预告何时开
课何时放学。 
  
  
   如何在涉世之初少走弯路,有一个好的开端,开始一番成功的事业?以下是
一些先行者积累的10条有益的涉世忠告。好好地遵循、把握这些忠告和建议吧,比
起所学的课堂课程来,它毫不逊色! 
  
  
   1. 买个闹钟,以便按时叫醒你。贪睡和不守时,都将成为你工作和事业上的
绊脚石,任何时候都一样。不仅要学会准时,更要学会提前。就如你坐车去某地,
沿途的风景很美,你忍不住下车看一看,后来虽然你还是赶到了某地,却不是准时
到达。“闹钟”只是一种简单的标志和提示,真正灵活、实用的时间,掌握在每个
人的心中。 
  
  
   2. 如果你不喜欢现在的工作,要么辞职不干,要么就闭嘴不言。初出茅庐,
往往眼高手低,心高气傲,大事做不了,小事不愿做。不要养成挑三拣四的习惯。
不要雨天烦打伞,不带伞又怕淋雨,处处表现出不满的情绪。记住,不做则已,要
做就要做好。 
  
  
   3. 每个人都有孤独的时候。要学会忍受孤独,这样才会成熟起来。年轻人嘻
嘻哈哈、打打闹闹惯了,到了一个陌生的环境,面对形形色色的人和事,一下子不
知所措起来,有时连一个可以倾心说话的地方也没有。这时,千万别浮躁,学会静
心,学会忍受孤独。在孤独中思考,在思考中成熟,在成熟中升华。不要因为寂寞
而乱了方寸,而去做无聊无益的事情,白白浪费了宝贵的时间。 
  
  
   4. 走运时要做好倒霉的准备。有一天,一只狐狸走到一个葡萄园外,看见里
面水灵灵的葡萄垂涎欲滴。可是外面有栅栏挡着,无法进去。于是它一狠心绝食三
日,减肥之后,终于钻进葡萄园内饱餐一顿。当它心满意足地想离开葡萄园时,发
觉自己吃得太饱,怎么也钻不出栅栏了。相信任何人都不愿做这样的狐狸。退路同
样重要。饱带干粮,晴带雨伞,点滴积累,水到渠成。有的东西今天似乎一文不值
,但有朝一日也许就会身价百倍。 
  
  
   5. 不要像玻璃那样脆弱。有的人眼睛总盯着自己,所以长不高看不远;总是
喜欢怨天尤人,也使别人无比厌烦。没有苦中苦,哪来甜中甜?不要像玻璃那样脆
弱,而应像水晶一样透明,太阳一样辉煌,腊梅一样坚强。既然睁开眼睛享受风的
清凉,就不要埋怨风中细小的沙粒。 
  
  
   6. 管住自己的嘴巴。不要谈论自己,更不要议论别人。谈论自己往往会自大
虚伪,在名不副实中失去自己。议论别人往往陷入鸡毛蒜皮的是非口舌中纠缠不清
。每天下班后和你的那些同事朋友喝酒聊天可不是件好事,因为,这中间往往会把
议论同事、朋友当做话题。背后议论人总是不好的,尤其是议论别人的短处,这些
会降低你的人格。 
  
  
   7. 机会从不会“失掉”,你失掉了,自有别人会得到。不要凡事在天,守株
待兔,更不要寄希望于“机会”。机会只不过是相对于充分准备而又善于创造机会
的人而言的。也许,你正为失去一个机会而懊悔、埋怨的时候,机会正被你对面那
个同样的“倒霉鬼”给抓住了。没有机会,就要创造机会,有了机会,就要巧妙地
抓住。 
  
  
   8. 若电话老是不响,你该打出去。很多时候,电话会给你带来意想不到的收
获,它不是花瓶,仅仅成为一种摆设。交了新朋友,别忘了老朋友,朋友多了路好
走。交际的一大诀窍就是主动。好的人缘好的口碑,往往助你的事业更上一个台阶
。 
  
  
   9. 千万不要因为自己已经到了结婚年龄而草率结婚。想结婚,就要找一个能
和你心心相印、相辅相携的伴侣。不要因为放纵和游戏而恋爱,不要因为恋爱而影
响工作和事业,更不要因一桩草率而失败的婚姻而使人生受阻。感情用事往往会因
小失大。 
  
  
   10. 写出你一生要做的事情,把单子放在皮夹里,经常拿出来看。人生要有
目标,要有计划,要有提醒,要有紧迫感。一个又一个小目标串起来,就成了你一
生的大目标。生活富足了,环境改善了,不要忘了皮夹里那张看似薄薄的单子。

2005年01月21日

 用手机上网已经有好长一段时间了,每次在和朋友交流经验时,总会发现很多朋友对CMWAP和CMNET的区别还是不甚了解。对于一些新软件,经常有人会问“CMWAP可以用吗?”,所以笔者撰写了此文,希望本文能为大家解开这个疑惑。

 

  问题1.为什么会有两个接入点?

 
 在网上查阅大量资料后并经过反复的尝试与探索后,笔者对CMWAP和CMNET两种上网方式作出了一下总结:在国际上,通常只有一种GPRS接入方式,
为什么在中国会有CMWAP和CMNET两兄弟呢?(彩信之所以单独配置接入点是因为彩信服务需要连接专用的服务器,在这里不作探讨。)其实,CMWAP
和 CMNET
只是中国移动人为划分的两个GPRS接入方式。前者是为手机WAP上网而设立的,后者则主要是为PC、笔记本电脑、PDA等利用GPRS上网服务。它们在
实现方式上并没有任何差别,但因为定位不同,所以和CMNET相比,CMWAP便有了部分限制,资费上也存在差别。

  问题2.什么是WAP?

 
 WAP只是一种GPRS应用模式,它与GRPS的接入方式是无关的。WAP应用采用的实现方式是“终端+WAP网关+WAP服务器”的模式,不同于一般
Internet的“终端+服务器”的工作模式。主要的目的是通过WAP网关完成WAP-WEB的协议转换以达到节省网络流量和兼容现有WEB应用的目
的。

  WAP网关从技术的角度讲,只是一个提供代理服务的主机,它不一定由网络运营商提供。但据我所知,中国移动GPRS网络目前只有唯
一的一个WAP网关:10.0.0.172,有中国移动提供,用于WAP浏览(HTTP)服务。有一点需要注意,WAP网关和一般意义上的局域网网关是有
差别的,标准的WAP网关仅仅实现了HTTP代理的功能,并未完成路由、NAT等局域网网关的功能。这就决定了它在应用上所受到的限制。

  问题3.中国移动对CMWAP的限制?

 
 为了从应用中区别两者的定位,中国移动对CMWAP作了一定的限制,主要表现在CMWAP接入时只能访问GPRS网络内的IP(10.*.*.*),而
无法通过路由访问Internet。(少数地区的移动网络可能不存在这一限制。)我们用CMWAP浏览Internet上的网页就是通过WAP网关协议或
它提供的HTTP代理服务实现的。

  说到这里,就让笔者自然而然的联想到公司的网络,相信不少工作的朋友都有类似的体会。公司的网络在网
关上不提供路由和NAT,仅仅提供一个可以访问外网的HTTP代理。这样,我们就无法直接使用QQ、MSN等非HTTP协议的应用软件了(好在它们还提供
的有HTTP代理的连接方式),CMWAP也正是。

  问题4.CMWAP和CMNET的适用范围

 
 两种上网连接方式的适用范围才是大家最关心的问题。CMNET拥有完全的Internet访问权,这里就不多说了,主要让我们来看看CMWAP。因为有
了上面提到的限制,CMWAP的适用范围就要看WAP网关所提供的支持了。目前,中国移动的WAP网关对外只提供HTTP代理协议(80和8080端口)
和WAP网关协议(9201端口)。

  因此,只有满足以下两个条件的应用才能在中国移动的CMWAP接入方式下正常工作:

  1. 应用程序的网络请求基于HTTP协议。

  2. 应用程序支持HTTP代理协议或WAP网关协议。

  问题5.如何辨别一个应用程序的网络请求是否基于HTTP协议?

 
 这个问题还真不好回答,要完全做到这一点需要通过拦截应用程序的通信数据包进行分析。这里提供几个简单的方法给广大朋友:从表现上看,如果它的网络请求
是网址(URL)的形式,那么通常是基于HTTP协议的,如Web浏览器;如果它连接的服务器端口是80,那么它可能是基于HTTP协议的。

  问题6.如何区别一个应用程序支持HTTP代理协议还是WAP网关协议呢?

  首先看它的设置中有没有代理服务器的选项,如果有则表示它支持HTTP代理协议。如果没有,则需要按照以下步骤测试:

 
 在GPRS接入点设置的高级设置里去掉代理服务器的设置项:Server Address 和 Server
Port,如果应用程序可以正常工作,那么它是基于WAP网关协议,如Java程序、S60内置的浏览器。如果在此状态下不能正常工作,而恢复GPRS接
入点高级设置中的代理服务器设置后能够正常工作,则应用程序支持HTTP代理协议(代理设置从系统中读取)。如果仍不能正常工作,那么这个应用程序一般来
说是不支持HTTP代理协议或WAP网关协议的。

  这里需要特别说明的是JavaQQ,它有Socket和HTTP两种版本。现在网上流
传的可用于CMWAP的JavaQQ就是基于HTTP协议的。就拿那个JavaQQ 2004来说,启动画面中就明确的写着“KJava QQ
HTTP”。而SIS版的QQ和AgileMessenger(S60的MSN客户端)因为是采用的普通的Socket连接方式,因此无法用于
CMWAP。


  最后笔者总结了一下,CMWAP下可以使用的常见软件的工作方式:

  (1) 手机内置的浏览器:WAP网关协议

  (2) Opera 浏览器:HTTP代理协议(有代理设置)

  (3) Java 程序:WAP网关协议

  (4) AvantGo:HTTP代理协议(有代理设置)

  手机上网现在已经被许多手机用户广泛使用,笔者谨希望这篇文章能对用手机上网的用户有所帮助。


3G会带来新一代首富吗?

(2005-01-14 08:52) (桐格 黄陆璐) (全球财经观察)
导读–移动互联网最终建成所带来的增值空间,是否会带来类似互联网神话的新一代首富


 
 想象你可以通过手机参观和预定好当天的商务活动场地;同时,你也可以在驾车不可避免的中途停顿中通过手机查看你喜爱的电视节目;你甚至可以想象,你随身
携带的手机,将使你的企业实现移动办公……这是3G描画出的未来。运营商们几乎达成共识,3G通路的建成,将使那些能够通过移动通讯向用户提供多
样化、差异化和个性化增值业务的企业获得商机。在我们关注3G的巨额投入的同时,不妨设想一下,移动互联网最终建成所带来的增值空间,是否会带来类似互联
网神话的新一代首富?他们首先必须具备哪些方面的条件?什么样的领域有可能掘得最大商机?除此之外,在3G游戏、3G资讯业务或是我们现在还想不到的与
3G有关的业务中,又会存在怎样的商业和创富机会?


  《全球财经观察》:3G带来的机会与1990年代互联网兴起时的机会存在哪些方面的异同?

 
 章苏阳:从理论上来讲,3G和互联网一样都意味着机遇,也有可能从中诞生新一代首富。但是两者显然存在着很多不同:首先可以肯定的是3G与互联网的起始
点完全不同,因为此前已经有很多人都熟悉了准3G的服务,例如通过使用2.5代移动通信网络;其次相对当初人们对互联网的完全陌生,关于3G人们了解得更
多,瞄准这个市场的人也更多,因此介入3G在竞争方面的挑战会更大。


  何啸威:我把3G时代看作是移动互联网时代,是互联网的延伸。如
果比较来说,目前3G的状况同1998年左右的互联网情况差不多。那个时候互联网第一次圈地成功的主要还是比较个人的服务为主,而非商业的,比如说谈话工
具、免费的个人主页、社区、免费的电邮,这之后才是商业力量的进入,比如说e龙、易趣。同样对于3G来说,可能现在在内容服务方面更有可能获得市场的,也
是个人用户为主的应用方面比如信息交流、社区应用等。


  金易:显然,3G和互联网是不可以放在一起做比较的,两个机会的区别是本质的。
3G的玩家一定都是大玩家,不像互联网可能十几万就能运作起来,是小游戏。涉入3G动辄就上亿,对技术和资金的门槛要求都是相当高的,尤其在技术上,从研
发到技术成熟,这是需要很大投入的。3G不像互联网那么容易参与。


  《全球财经观察》:运营商们似乎达成共识——决定3G成败的将是内
容提供商。下一代首富会从基于3G的电信增值业务提供商中诞生吗?在需要大规模投入技术资金的当下,其他一些目前3G产业链上仍然匮乏的重要环节例如多媒
体芯片提供商,是否更有可能成为掘得最大商机的人?


  章苏阳:整个产业链上的环节是几位一体的,现在很重要的三个部分,设备、运营和内
容中,前两个方面的技术和管理已经成熟了,而丰富多彩的内容也已存在,现在的问题可能主要在资费和政策。当然,通过移动设备获得内容和此前在互联网上获得
内容相比,监管方面3G肯定是更严格和有效。因此对于内容提供商来说,运营商的监管和政策等对他们下一步的发展肯定有影响。而如果说获取商机,我想还有一
直比较强大的力量将是视频媒体。比如说央视、文广传媒等等,在手机视频服务方面也会有很多相关企业获得发展机会。


  金易:我想这个问题
很难回答,现在来回答为时太早,毕竟现在的市场不是所有的人都会去用增值业务的。2000多万的用户是一个网的盈亏点,而用户达不到这个点的时候,人均下
来,用户费用就很高了。当然也不排除这种可能。在
2G时代就已经有提出移动互联的概念,在手机才出现的时候,就曾经提过短消息的设想,但是,如果一切设想比市场实际情况走得太远,那这种想法在市场上实施
的最终结果只能是死亡。根据3G手机业务在其他国家发展的经验,我想在中国,3G最初应该是以语音为主。和记黄埔在北非和欧洲拿到几十亿的单子,走的就是
低价的策略,主推的也是语音这块。


  3G是个新的平台,企业自然看到很多机会。我们是美国专门从事电讯器材设备生产和研发的公司,去年
收购了CDMA最大天线的供应企业,而且掌握公放3G射频核心技术,最近,已经将生产中心从加拿大移到了中国苏州;并且刚刚围绕3G业务在上海成立了视频
公放研发中心。谁会掘得最大的商机,很难讲,那就得看谁对市场预测准了。3G一旦放开,很多东西是要外包出去做的,零部件厂商都在为3G做准备了。


 
 何啸威:首先要强调这是一个完整的产业链,其中的任何一个环节出现问题都会对整个链条产生影响。如果说获利,我想首先是设备运营商,比如电信,他们的投
入同互联网建设相比更加巨大,相对来说他们的回报也是最大的。这就回到我们的主题新一代首富上,我想对于这个财富神话的界定,恰恰是那些投入不高但是回报
将非常巨大的内容提供商们。


  我们可以认为在互联网中产生价值的两个部分同样也适用于移动互联网:一是空间,例如娱乐、资讯,这部分是
希望能够让更多人驻足的;另一部分是网络,主要是生产型的企业,这一部分是希望尽快通过网路通道实现实际价值的。基于此,3G的内容提供商也可以是这两个
方向:第一种例如视频资讯、娱乐、社区;第二种例如企业的移动办公等等。


  《全球财经观察》:依据日本和韩国企业的市场经验,决定在3G中掘金成功的关键因素在于服务和财务。在中国的经济体制下,加入3G阵营,除了具备足够的财力,以及根据市场需求产品创新的能力之外,还需要哪些必要因素?

 
 何啸威:资金和符合市场需要的产品创新是非常重要的两个方面。提到适合市场的产品,我认为,人们对于高科技产品的需求,在市场提供出来之前他们可能自己
都不知道是否需要,因而良好的市场分析和推动也很重要。值得强调的是,不同于互联网时代,移动通信运营商的力量更强大,他们在资费方面和内容方面非常具有
优势,而他们运营中制订的政策对于提供商来说也有制约和影响。


  金易:用韩国的例子来说,在2G时代,韩国充分培养了用户使用手柄操控
形式的习惯,因此进入3G对他们来说不会觉得很难接受。市场不是一蹴而就的。以中国目前的受教育程度来讲,国外的3G模式不见得能在中国成功。中国的特色
是成本低,最终都会陷入价格战,价格战不见得是件坏事,它可以淘汰出一批承受不起的,经过后,竞争力就更强了。而四张牌照的发放,也就是使竞争更激烈,让
更多的人用得起吧。


 章苏阳:就像前面所说,首先市场竞争中那些已经拥有资源的企业会更有利;其次3G不像互联网,运营商对于整个局面更有可控性,这些因素会对内容提供商的发展有影响。既然现在技术已经不是问题,那么政策放开之后,解决了融资问题的企业都有可能获得创富机遇。

 
 《全球财经观察》:从全球的经验来看,运营商和内容提供商的两种模式分别是NTTdocomo和沃达丰两种。一个是NTTdocomo日本,它把比较多
的分成分给了内容提供商;英国沃达丰则尽可能自己来提供内容。在中国,哪一种模式会更适合?如果是NTTdocomo模式,四张牌照的分属,又会带来哪些
划定内容提供商们市场份额的因素?


  何啸威:NTTdocomo模式差不多可以理解成”我搭平台,你来唱戏”,这其实有点跟我们的”移
动梦网”计划相同。比如说百宝箱一直推行得不是很好,不是平台的问题,或者模式的问题,而是内容的问题。这就说明中国市场同日本有很大的不同,日本人喜欢
单机游戏而中国人更喜欢群众运动。因而我觉得联网游戏可能会更有机会。


  章苏阳:中国现在基本上没有沃达丰的模式,运营商们现在通常都
会把内容的部分放出来。当然发放的牌照中有一个给了沃达丰倒是有可能会做得很好。(笑)但是确定是那些通过市场手段获得众多好的内容提供商的合作的运营商
更能把握市场。至于合作我想问题不大,是产品的市场竞争问题。


  《全球财经观察》:目前业务提供商所能够提供的业务较为单一,同质化严
重,尚未形成丰富多样、满足不同用户需求的系列化增值业务。3G带来的移动增值业务市场重整中,必定有人淡出有人为王,在这中间,诸如已经博得网络游戏先
机的盛大以及在互联网其他产品(聊天工具)中占有绝对优势的企业是否会有更大的胜算?


  章苏阳:这倒未必,他们有比较好的基础,技术也不会是问题,但是进入一个新的领域,如果没有适合新市场的新的思维,也很难说他们就有更大胜算。

  金易:的确这很难讲,主要还是看创新怎样。

 
 何啸威:我觉得首先他们的确是有优势,首先他们有资金基础,这对于高科技企业是公认非常重要的一点,有助于不断把握新的机遇;其次他们有品牌的优势;第
三他们有广泛的用户资源。但是从业务的结合性上说,如果做不到结合移动通信技术的平台有针对性的设计产品,又或者不能找到很好的结合点让网络和手机服务内
容互动,而只是做一个简单的互联网内容移植,他们也不可能获得良好的市场回馈。


  《全球财经观察》:风险投资商是否还将会是提供资金的主要动力?根据你的了解,这一次风险投资是否会像对互联网投资一样,对3G充满热情?

 
 何啸威:互联网时代大家对于这个新生事物都不了解,风险投资商多少是有些概念模糊,他们感受互联网英雄们的网络梦想,并在完全清楚状况的情况下做了一次
冒险。但是现在不同了,他们本身对于3G已经有了充分的认识和分析,并且对于互联网时代投资成败有了很好的经验总结,因此虽然仍然对于3G充满热情,但是
除此之外,风险投资者们也更多了一层审慎。


  金易:显然,风险投资商只会关注增值业务这块,对产业链上的基础设备,是不会有什么兴趣
的。对增值服务这块的投资热情取决于投资商在多大程度上相信移动互联网在中国的出现。这也正好可以回答我对3G是否可以造就新的财富英雄的看法:在中国,
能够普及的产品才能造就财富英雄,也就是说连菜市场的大妈都用得起。而这就要求3G的实施已经比较完整,网络的铺就、终端市场的解决,都是移动互联网出现
的前提条件,它的普及与成熟,将会在3G时代产生新的英雄的。事实上,移动互联里的系统、终端是比较复杂的问题,不是说技术上没有解决的方案,而是解决的
成本太高,只能有很少一部分人能够使用得起。所以,新财富英雄出现,如果移动数据成本下降,不排除这种可能。


  《全球财经观察》:技术设备研发机构、风险投资机构、运营商,内容提供商们应当如何应对这些基础性要素力量的竞争与合作?还有哪些要素决定他们 “掘金梦”的成败?

  金易:3G的启动使市场的容量大了,我想市场的机会大家都有,运营、设备提供、零部件厂商前期投入都很大,而产出很少,采购量上不去,零部件这块已经死掉很多了。还有就是牌照发放、用户情况,这些都是决定要素。3G也只是一个平台而已,”掘金梦”希望小。

 
 对于增值服务这块,我前面已经讲过,终端市场情况复杂,比如微软手机浏览器也只占市场5%的份额,都已经算很强了,而WINDOWS占市场98%份额,
这在手机基本上是不可能的。终端市场这块现在还是春秋时代,连三国都难算。所以移动互联这块产生首富第一个障碍就是终端市场问题。


  何
啸威:除了上面提到的,运营商对于内容商更有调控力量,会使整个行业更加规范和具有支撑之外,政府目前对于整个行业也是扶植的,因而大的环境不错,产业链
上的企业还是要靠自己。作为内容提供商,我还想强调一下设备提供这一环节的重要性,因为手机研发、制造业的发展对于所有基于此的服务内容提供者而言是一个
平台。终端的技术进步,以及移动电脑和移动通信工具融合的态势,将为我们提供更广阔的发展空间和多种服务可能。

甲子记时即是干支纪时,它是深蕴中国传统文化特色的一种记时系统,在世界历法史工占有十分重要的位置.


传,中国上古天皇氏制干支,伏羲氏作甲历.黄帝合大烧作甲子,黄帝开国元年(公元前2697年)首定甲子年.但见于史书记载的,则是干支纪年始于汉太初元
年(公元前104年)。司马迁在《史记·历书甲子篇》说:“太初元年,岁名焉逢摄提格,月名毕聚,日
得甲子;夜半朔旦冬至。正北,十二月。无大余,无小余。”对此,《史记索隐》说:“据此则甲寅之岁也。”《尔雅·释天》则说:“岁阳者,甲乙丙丁戊己庚辛
壬癸十干是也。岁明者,子丑寅卯辰巳牛未申酉戌亥十二支是也。岁阳在甲云‘焉逢’,谓岁干也、岁阴在寅
云‘摄提格’,渭岁支也。”此谓天干为岁阳,地支为岁阴。为什么干支首元定于甲寅。

《史记索隐》指出了天文学根据,说:“天元之始,于十
一月甲子朔旦冬至,日月若联珠,俱起干牵牛之初。……此则甲寅之元,天道之首。”亦即当年之十一月甲子日,时逢夜半冬至,斗建(北斗)所指为子,
太阳、地球、月球三位在牵牛初年联为一线,如同串 珠之状,其月球逢朔,其地球近日,真是千载难逢之际,放首定为汉太初历的历元,朝代年分为汉无封七年。


支做为记时系统,用10个天干,即甲、乙、丙、丁、戊、已、庚、辛、壬、癸来纪年与纪日。用12个地支.即子、丑、寅、卯、辰、巳、午、来、申、酉、戌、
亥来纪月与纪时.十天干与十二地支,是阳干配阳支,阴干配阴支,5个阳干配6个阳支得出30个阳干支
,5个阴干配6个阴支得出30个阴干支,两者相合阴阳60干支,又称为六十花甲或者六十甲子。其顺序相配如下:

甲子 乙丑 丙寅 丁卯 戊辰 己巳 庚午 辛未 壬申 癸酉
甲戌 乙亥 丙子 丁丑 戊寅 己卯 庚辰 辛巳 壬午 癸未
甲申 乙酉 丙戌 丁亥 戊子 已丑 庚寅 辛卯 壬辰 癸巳
甲午 乙未 丙申 丁酉 戊戌 己亥 庚子 辛丑 壬寅 癸卯
甲辰 乙巳 丙午 丁未 戊申 己酉 庚戌 辛亥 王子 癸丑
甲寅 乙卯 丙辰 丁巳 戊午 己未 庚申 辛酉 王戌 癸亥


六十花甲.便形成了独特的中国记时结构.一时纪一个干支,一天纪一个干支,一月纪一个干支,一年纪一个干支,从黄帝时代开儿每60年一个花甲.周而复始,
循环不绝,垂4000年而不衰,沿用至今而岁序不乱、《素问·天元纪大论》对六十花甲即甲子纪时结构
进行了经典的介绍,文说;“天以六为节,地以五为制,周天气者,六期为一备;终地纪者,五岁为一周。君火以明,相火以位,五六相合而七百二十气为一纪,凡
三十岁;千四百四十气,凡六十岁,而为一周,不及太过.斯皆见矣。”天之气,六年为一周;地之气,五年
为一周.天地之气相合,三十年为一周.阴阳之机相交。六十年为一周,这亦即古代所谓的气数.

《素问·六节脏象论》说:“天以六六为节,地
以九九制会,天有十日,日六竟而周甲,甲六复而终岁,三百六十日法也”又说;“五日谓之候,三侯谓之气.六气调之时,四时谓之岁,而从其主治焉。五运相袭
而皆治之,终期之日,周而复始,时立气布,如环无端。候亦 同法。”此讲甲子记时一年分为四季、二十四节气、七十二候、三百六十日、三万六千刻之法也。
昨晚我终于在我一台旧机子上装上了传说中的Debian,当那个界面优美的X-Windows系统出现在眼前拾,心情特别舒畅,安装过程中的焦虑和忐忑一扫而走,如今我开始全面体会Debian给我带来的享受生活。

Debian全球开发社群

http://prgspace.nease.net/cplusplus/linux_c_make.htm

Linux C编程 – make命令的使用


作者:转载自Linuxaid


发表时间:2004-8-10


在开发一个系统时,一般是将一个系统分成几个模块,这样做提高了系统的可维护性,但由于各个模块间不可避免存在关联,所以当一个模块改动后,其他模
块也许会有所更新,当然对小系统来说,手工编译连接是没问题,但是如果是一个大系统,存在很多个模块,那么手工编译的方法就不适用了。为此,在Linux
系统中,专门提供了一个make命令来自动维护目标文件,与手工编译和连接相比,make命令的优点在于他只更新修改过的文件(在Linux中,一个文件
被创建或更新后有一个最后修改时间,make命令就是通过这个最后修改时间来判断此文件是否被修改),而对没修改的文件则置之不理,并且make命令不会
漏掉一个需要更新的文件。

文件和文件间或模块或模块间有可能存在倚赖关系,make命令也是依据这种依赖关系来进行维护的,所以我们有必要了解什么是依赖关系;打个最比喻:如果我
们想玩游戏,必须有游戏光碟和电脑(这两者间存在依赖关系),而有游戏光碟和电脑的前提条件是必须经济条件允许,另外当你有了游戏光碟后还要根据你的心情
来选择是玩哪种游戏,如下图:

————————————

玩游戏

|

+

游戏光碟 电脑

| |

+ +

心情 经济情况

————————————

make命令当然不会自己知道这些依赖关系,而需要程序员将这些依赖关系写入一个叫makefile的文件中。Makefile文件中包含着一些目标,通
常目标就是文件名,对每一个目标,提供了实现这个目标的一组命令以及和这个目标有依赖关系的其他目标或文件名,以下是一个简单的Makefile的简单例
子:

————————————

#一个简单的Makefile

prog:prog1.o prog2.o

gcc prog1.o prog2.o -o prog

prog1.o:prog1.c lib.h

gcc -c -I. -o prog1.o prog1.c

prog2.o:prog2.c

gcc -c prog2.c

————————————

以上Mamefile中定义了三个目标:prog、prog1和prog2,冒号(原文为”分号”)后是依赖文件列表,中间用一个空格(原文为”分号”)
开;对于第一个目标文件prog来说,他有两个依赖文件:prog1.o和prog2.o,任何一个依赖文件更新,prog也要随之更新,命令gcc
prog1.o prog2.o -o
prog是生成prog的命令。make检查目标是否需要更新时采用递归的方法,递归从底层向上对过时目标进行更新,只有当一个目标所依赖的所有目标都为
最新时,这个目标才会被更新。以上面的Makefile为例,我们修改了prog2.c,执行make时,由于目标prog依赖prog1.o和
prog2.o,所以要先检查prog1.o和prog2.o是否过时,目标prog1.o依赖prog1.c和lib.h,由于我们并没修改这两个文
件,所以他们都没有过期,接下来再检查目标prog2.o,他依赖prog2.c,由于我们修改了prog2.c,所以prog2.c比目标文件
prog2.o要新,即prog2.o过期,而导致了依赖prog2.o的所有目标都过时;这样make会先更新prog2.o再更新prog。

站长注释:在Solaris Unix系统下,需要在命令”gcc …”之前加上一个TAB,否则,Make会报告”Missing Separator”错误

如果某一行过长,已经到了文本编辑器的右边界,可用一个反斜杠(\)做换行符,反斜杠所连接的所有行都会被当成一行来处理;另外在Makefile中涉及的文件名允许使用通配符(?或*)。

有时候为了简化命令的书写,可以在Makefile中定义一些宏和使用缩写,下面是几个很使用的缩写:

$@ 代表该目标的全名

$* 代表已经删除了后缀的目标名

$< 代表该目标的第一个相关文件名

现在就可以使用缩写对以上Makefile做相应的修改:

————————————

#使用缩写的Makefile

prog:prog1.o prog2.o

gcc prog1.o prog2.o -o $@

prog1.o:prog1.c lib.h

gcc -c -I. -o $@ $<

prog2.o:prog2.c

gcc -c $*.c

————————————

在一个项目中,可能几个目标中使用同一个文件a.c,如果以后这个文件被修改,那么需要修改Makefile中所有的a.c,这样就比较麻烦,可以定义宏来解决这个问题,宏可以使Makefile更加清晰:

————————————

#使用缩写和宏的Makefile

MARCO = prog1.o prog2.o

prog:$(MARCO)

gcc prog1.o prog2.o -o $@

prog1.o:prog1.c lib.h

gcc -c -I. -o $@ $<

prog2.o:prog2.c

gcc -c $*.c

————————————

对于很大的项目来说,自己手写Makefile非常麻烦,而标准的GNU软件(如Apache(原文:Apacle)
都是运行一个configure脚本文件来产生Makefile;GNU软件automake和autoconf就是自动生成configure的工具。
开发人员只需要先定义好宏,automake处理后会产生供autoconf使用的Makefine.in,再用autoconf就可以产生
configure。要使用automake和autoconf必须安装:GNU Automake,GNU Autoconf,GNU
m4,perl和GNU Libtool。

假设你有一个源文件test.c,用autoscan可以产生一个configure.scan文件,编辑这个文件:

————————————

dnl Process this file with autoconf to produce a configure script.

AC_INIT(test.c)

AC_INIT_AUTOMAKE(test,1.0)

dnl Checks for programs.

AC_PROG_CC

dnl Checks for libraries.

dnl Checks for header files.

dnl Checks for typedefs, structures, and compiler characteristics.

dnl Checks for library functions.

AC_OUTPUT(Makefile)

————————————

接着将configure.scan改名为cnfigure.in,再执行aclocal和autoconf,会产生aclocal.m4和
configure两个文件:我们再编辑Makefile.am文件,Makefile.am文件中包含了我们自己定义的宏以及目标文件,
automake会读如这个文件并根据我们自己定义的宏产生相应的Makefile.in文件:

————————————

AUTOMAKE_OPTIONS=foreign

run_PROG=test

test_SOURCE=test.c

————————————

接下来执行automake -a,到目前为止,configure文件已经成功生成。


Linux C编程 – make命令的使用

作者:转载自Linuxaid

发表时间:2004-8-10


开发一个系统时,一般是将一个系统分成几个模块,这样做提高了系统的可维护性,但由于各个模块间不可避免存在关联,所以当一个模块改动后,其他模块也许会
有所更新,当然对小系统来说,手工编译连接是没问题,但是如果是一个大系统,存在很多个模块,那么手工编译的方法就不适用了。为此,在Linux系统中,
专门提供了一个make命令来自动维护目标文件,与手工编译和连接相比,make命令的优点在于他只更新修改过的文件(在Linux中,一个文件被创建或
更新后有一个最后修改时间,make命令就是通过这个最后修改时间来判断此文件是否被修改),而对没修改的文件则置之不理,并且make命令不会漏掉一个
需要更新的文件。

文件和文件间或模块或模块间有可能存在倚赖关系,make命令也是依据这种依赖关系来进行维护的,所以我们有必要了解
什么是依赖关系;打个最比喻:如果我们想玩游戏,必须有游戏光碟和电脑(这两者间存在依赖关系),而有游戏光碟和电脑的前提条件是必须经济条件允许,另外
当你有了游戏光碟后还要根据你的心情来选择是玩哪种游戏,如下图:
————————————
玩游戏
|
+
游戏光碟 电脑
| |
+ +
心情 经济情况
————————————

make
命令当然不会自己知道这些依赖关系,而需要程序员将这些依赖关系写入一个叫makefile的文件中。Makefile文件中包含着一些目标,通常目标就
是文件名,对每一个目标,提供了实现这个目标的一组命令以及和这个目标有依赖关系的其他目标或文件名,以下是一个简单的Makefile的简单例子:
————————————
#一个简单的Makefile
prog:prog1.o prog2.o
gcc prog1.o prog2.o -o prog
prog1.o:prog1.c lib.h
gcc -c -I. -o prog1.o prog1.c
prog2.o:prog2.c
gcc -c prog2.c
————————————
以上Mamefile中定义了三个目标:prog、prog1和prog2,冒号(原文为”分号”)后是依赖文件列表,中间用一个空格(原文为”分号”)
开;对于第一个目标文件prog来说,他有两个依赖文件:prog1.o和prog2.o,任何一个依赖文件更新,prog也要随之更新,命令gcc
prog1.o prog2.o -o
prog是生成prog的命令。make检查目标是否需要更新时采用递归的方法,递归从底层向上对过时目标进行更新,只有当一个目标所依赖的所有目标都为
最新时,这个目标才会被更新。以上面的Makefile为例,我们修改了prog2.c,执行make时,由于目标prog依赖prog1.o和
prog2.o,所以要先检查prog1.o和prog2.o是否过时,目标prog1.o依赖prog1.c和lib.h,由于我们并没修改这两个文
件,所以他们都没有过期,接下来再检查目标prog2.o,他依赖prog2.c,由于我们修改了prog2.c,所以prog2.c比目标文件
prog2.o要新,即prog2.o过期,而导致了依赖prog2.o的所有目标都过时;这样make会先更新prog2.o再更新prog。

站长注释:在Solaris Unix系统下,需要在命令”gcc …”之前加上一个TAB,否则,Make会报告”Missing Separator”错误

如果某一行过长,已经到了文本编辑器的右边界,可用一个反斜杠(\)做换行符,反斜杠所连接的所有行都会被当成一行来处理;另外在Makefile中涉及的文件名允许使用通配符(?或*)。
有时候为了简化命令的书写,可以在Makefile中定义一些宏和使用缩写,下面是几个很使用的缩写:
$@ 代表该目标的全名
$* 代表已经删除了后缀的目标名
$< 代表该目标的第一个相关文件名
现在就可以使用缩写对以上Makefile做相应的修改:
————————————
#使用缩写的Makefile
prog:prog1.o prog2.o
gcc prog1.o prog2.o -o $@
prog1.o:prog1.c lib.h
gcc -c -I. -o $@ $<
prog2.o:prog2.c
gcc -c $*.c
————————————

在一个项目中,可能几个目标中使用同一个文件a.c,如果以后这个文件被修改,那么需要修改Makefile中所有的a.c,这样就比较麻烦,可以定义宏来解决这个问题,宏可以使Makefile更加清晰:
————————————
#使用缩写和宏的Makefile
MARCO = prog1.o prog2.o
prog:$(MARCO)
gcc prog1.o prog2.o -o $@
prog1.o:prog1.c lib.h
gcc -c -I. -o $@ $<
prog2.o:prog2.c
gcc -c $*.c
————————————

对于很大的项目来说,自己手写Makefile非常麻烦,而标准的GNU软件(如Apache(原文:Apacle)
都是运行一个configure脚本文件来产生Makefile;GNU软件automake和autoconf就是自动生成configure的工具。
开发人员只需要先定义好宏,automake处理后会产生供autoconf使用的Makefine.in,再用autoconf就可以产生
configure。要使用automake和autoconf必须安装:GNU Automake,GNU Autoconf,GNU
m4,perl和GNU Libtool。
假设你有一个源文件test.c,用autoscan可以产生一个configure.scan文件,编辑这个文件:
————————————
dnl Process this file with autoconf to produce a configure script.
AC_INIT(test.c)
AC_INIT_AUTOMAKE(test,1.0)
dnl Checks for programs.
AC_PROG_CC
dnl Checks for libraries.

dnl Checks for header files.

dnl Checks for typedefs, structures, and compiler characteristics.

dnl Checks for library functions.

AC_OUTPUT(Makefile)
————————————

着将configure.scan改名为cnfigure.in,再执行aclocal和autoconf,会产生aclocal.m4和
configure两个文件:我们再编辑Makefile.am文件,Makefile.am文件中包含了我们自己定义的宏以及目标文件,
automake会读如这个文件并根据我们自己定义的宏产生相应的Makefile.in文件:
————————————
AUTOMAKE_OPTIONS=foreign
run_PROG=test
test_SOURCE=test.c
————————————
接下来执行automake -a,到目前为止,configure文件已经成功生成。