日历

« 2008-07-25  
  12345
6789101112
13141516171819
20212223242526
2728293031  

我的好友

最新留言

统计信息

  • 访问量: 1151
  • 日志数: 8
  • 建立时间: 2006-01-20
  • 更新时间: 2008-04-22

RSS订阅

我的最新日志

  • 狂妄和追求

    2008-4-22

    最近国产手机一败涂地,前几年曾经和外国品牌一分天下,占据了半壁江山,

    然后就是昙花一现,最后的美丽不再 ,从此江河日下,那些曾经的国产大厂都说 

    "我不做老大很久了".

    最新数据表明,BIRD,在去年亏损到达5亿,而夏新则是惊人的6亿.这些数据可能有误差,

    而其它大厂也在挣扎,不过江山带有人才出,想当年,这些大佬们何尝不是叱侘风云呢.

    在和国外分得半壁江山时候,也是俾倪一切,不可一世,看如今.不过才2~3年啊.

    不过最近有了新的弄潮儿,那就是天语,金立,其实看看如今的手机展台柜台即使到乡间

    的柜台,除了国外品牌的,也都是这些牌子了.

    不过令我惊讶的不是他们的突然决鹊起,令我佩服的也不是他们的销量,让我感到难过的是

    中国何时走出这样的怪圈:他们过几年也会消失的,只是早晚而已.

    因为那位老总说了一句很让我不知道滋味的话,,现在我们对手不是别人,我们的目标是 nokia

    我不知道这位老总是否知道,NOKIA 是真正作手机的,从操作系统,到通信系统的每个

    点,nokia都可以完成,而你最多是包装了一下.

    中国需要追求的目标,但是不是漫无目的的目标.如果是中兴,华为说这话,也许还可以理解

    国产手机倒下了不足为奇.

    不仅仅是国产手机倒下了,中国的百年企业,有几家呢.

    总不能几十年后,留给子孙的,除了卖包子的,还是那些卖馄饨的吧.

    现代工业需要兴起.国人心态太浮躁,需要踏实.

  • 我的专业介绍

    2008-4-13

    俺在这里写博客,第一不是为了给某些人看的,其次也不是讨好某些人的,但

    也不是来PK的,俺在论坛上独来独往,自由惯了,不喜欢拉拢结派,哥们姐们的.

    所以俺的日志,纯粹是消遣,给那些愿意看就看,看完了给个赏就说个好,不用

    拍案叫好,不好了,直接扔砖.

    说到计算机,我其实并不是学这个的,按说我是完全自学的,也可以.现在大学里很多

    学生抱怨学校,抱怨老师,觉得上当了,没有上一个好大学.

    我大学里按说学了第一个专业,到大二时候分配形势不好,于是换第二个专业,

    到了毕业时候,因为生存,觉得不行,需要再学一个,计算机吧,照这么说,大学时候是

    学了三个专业,计算机算一个,但是大学毕业时候,一点概念都没有,压根没有上过机器,那时候根本没有想到

    要用计算机,也用不起,那时候计算机太奢侈了,个人计算机一个家庭是买不起的,需要普通家庭

    十年积蓄,估计还不止吧.加上中国当时和西方的关系,很多设备零部件都是受到控制,现在

    我们自己都能生产了,但是当时无法想象,软件上更是严格控制,所以当时原子弹设计研究

    都是用手摇计算机算了,几乎是算盘在算,从这点上,就知道硬件上的条件的不足了.

    毕业后,工作了几年,发现在工作后,觉得不理想,也是为了生存,于是又重新考研,这次又换了

    专业,和以前读的专业都没有关系,是应用数学.

    我觉得在我不适合作计算机开发工作,因为我先天不足,很多都是自学的,概念理解不够透彻,自己

    理解上不懂了,也无人求教,即使是问朋友同伴,都求助无门.不过为了生存,还是进入了这一行.

    再继续深入理解,感觉难以再上层楼,尤其是计算机行业是实践性非常强的一门专业,所以如果不动手

    是无法学会的,一定要编程,code,

    我是从数学进入的,但是在硬件上欠缺,一直想回炉重炼,但是现在估计我这块废铁,已经没有人回收了

    而为了生存,我也需要更多的考虑.

    PS:  以下写给那些在校的 ,刚刚毕业走向社会的学生,

    1--

    天行健,君子以自强不息.不要老抱怨,而是要努力改变自己的环境,抱怨只会让自己变得自暴自弃.

    2--

    大学不是给你一切的地方,只是给你基本能力的地方.有些人抱怨专业不好,没有学会等,看看别人为什么

    学会了?还有同样是没有学会的,为什么毕业后,有人在快速在单位就掌握了技术,而你没有?因为大学

    保障你最基本的一些知识,更多的是你自己去争取

    3--

    主动性和被动性,作任何事情,都要主动积极.中国教育是被动的,因为从小学到高中,我们习惯了老师

    给予,老师教学生怎么作,家长让怎么作,学生自主性被剥夺了,也是中国学生缺乏创造性的一方面.

    4--

    生存是第一需要,无论作什么,因此明白这点.实际上,我曾经做过民工,做过苦力,

    所以不要认为做个经理很高贵,做个白领很高雅,如果你是的话,要理解老板的苦衷

    企业要生存,他可能愿意象民工一样去干活,如果你是普通的程序员,也要明白,我们所有的劳动

    其实都是为了生存,劳动没有高低贵贱区别. 我这里说了这么多,就是让大家知道明白 :

    尊重他人,其次尊重他人的劳动.

    5--

    donation: 中国对于linux世界的贡献不大,因为中国的生存压力太大,这是我对

    一个德国的哥们说的.每个人都忙于生存了,哪有时间来作公益事业呢.我告诉他说,如果linus

    当时芬兰不是那么好的福利,其实linus自己也说了,他不用考虑子女生活,担心自己生活

    所以不用那么多money.大部分人还不是那么贪婪的,我想.所以在有能力时候,作些公益事业

    我想说的是,这样的公益事业,不仅仅限于开源软件!!!

  • linux desktop

    2008-4-12

    linux 要普及,终究不能和dos一样,虽然dos最后到了7.0,还是寿终正寝.

    狂热的linux fan 总是不以为然,觉得CMD 界面是linux精华所在,失去了

    linux shell ,linux也就不是linux了,要达到普及linux ,

    一定要做好GUI.

    目前linux desktop主要是两家 gnome  KDE,后者是一家公司专门主持,目前

    已经被nokia并购.其它的目前使用者太少,包括CDE,XFce,EDE,UDE,

    foXdestop,FVWM-crystal

    因为linux总是百花齐放,只要你原意,你可以使用

    任何一家,但是问题是,普通用户需要的不是炫耀他的"独立自助"能力.

     

    说道Desktop +windows manager+鼠标,光标+X windwos

    ,本文简单介绍为GUI,不知道是否妥当(图形用户界面)

    Graphic user interface 

    我觉得linux和windows 在GUI上的区别差别巨大,

    windows是把gui当作内核一部分,在内核加载时候即加载,这有其优点,也有其缺点

    优点:

      消息传递在内核里处理,事件处理也在内核内,因此效率很高,速度很快

    用户不会感觉的到显示上的缓慢,简化了用户程序的处理,复杂的显示有内核处理

    缺点:

      一旦GUI出现故障,则系统崩溃,所有程序受到影响,无法恢复,必须重启rst

    linux 把GUI作为一个进程来处理,用户随时可以换,在init进程完成后用户

    可以自定义GNOME还是kde ,各个用户登陆可以自定义,这里我就不详细介绍了.也可以

    在登陆了gnome后卸载,回到shell状态,在 init 3和 init 5之间

    切换

    优点:

       稳定,即使gui出现故障,不会影响其它进程运行,和其它进程毫无关系.灵活

    用户可以自由切换,更换自行定义GUI

    缺点:

       启动缓慢,效率不高,影响了用户使用,因为新用户需要学习熟悉各种GUI,而开发者

    要考虑各种GUI下的兼容性,gnome和KDE 在 X windows 开发包是不一样的.

    由于启动是作为进程setup,所以启动过程显得很缓慢,而再现过程也很慢,对于cpu要求高.

     

     linux也在尝试把gui 加入内核中,但是就像 linux和windos两种OS

    在一开始就定义了各自不同的软件框架,因此要做出如此大的改动,困难很大.

     

      

  • 全面 发展

    2008-4-12

    从小就被教育要全面发展,所以我那个时代,初中时候最多一个学期要上9门课程

    不过对于我来说,没有觉得累或这课程太重.也没有象现在人说那样"如饥似渴"

    学习.学习对我来说就像吃饭睡觉,更何况,除了学习,我还有很多更重的家务

    要做.

    现在的有些孩子太矫情,太娇惯,每天上学觉得累,于是减负.还是累.不否认

    现在社会学校有责任,因为我看见一年级的书包,居然沉甸甸的.

    我有幸参加了现在初中\高中的家长座谈会,虽然我并不是家长,但是我对于中国

    现代教育体制的担忧,趋势,确实只有无奈的叹息:

     家长带着孩子上学,闯红灯,我常常想去告诉他们,他们给孩子言行教育后果是什么?

     老师也要生存,老师中也有攀比,现在学校家长互相送礼给老师,不知道对孩子造成什么后果?

     现在社会很多纷繁复杂的现象,ATM机器故障案,从无期徒刑到5年;南京扶老太太去医院,最后

    被告为伤害案;交通事故发现者报案,最后反而被告为肇事者......

     是啊,现在孩子真的不知何去何从了.

     救救孩子,而谁来拯救我们呢,谁来救救孩子呢.

  • 自然码 其它

    2008-4-06

    看了 祥云阁http://www.lupaworld.com/15610 

    的文章自然码http://www.lupaworld.com/15610/viewspace_15238.html

    突然想起,原先我不是学习计算机的,算来我是纯粹理科的,和这个计算机的工科毫无边际

    但是就是从这个中文输入开始的.大概是90年代,1990年开始,我入学那阵,估计

    现在很多人都忘却了,也就是倪大院士等科技工作者发明各种汉字输入方法时候,

    我们学校的老师也自然发明了自己的一种方法.

    自然他认为他的方法是最好的,为了推广他的输入法,他要在学校推广,在学生中推广,

    所以我们成了第一批用户.其实我记得那阵子,我是在unix上使用的,那时候,机器是非常

    昂贵的,就是为了特定的unix系统,要专门写个操作系统的时代.现在人还不能理解开源思想也就是

    没有经历这个时代.

    我记得我们班有个伙计,后来放下了专业,专门去搞计算机专业了,不象现在可以跳行业,那时候

    是没有毕业文凭的.当然,现在的伙计水平,我觉得很多人我觉得是需要向他学习的,

    因为他在当时是没有编辑器一说的,就是在debug 汇编行编辑完成,编辑,编译,现在人都觉得不可思议

    不过当时很多软件都是这么开发完成的.包括著名的CCED.

    在当时的条件下,没有参考书,没有参考文档,今天有多少工程师还有这份毅力和兴趣?

  • A sample chat Server and Client Under linux

    2008-4-06

     

    Client Part :

    #include  <stdlib.h>
    #include  <stdio.h>
    #include  <errno.h>
    #include  <string.h>
    #include  <netdb.h>
    #include  <sys/types.h>
    #include  <netinet/in.h>
    #include  <sys/socket.h>

    int main(int argc,char *argv[])
    {
        
            int sockfd;
            char buffer[1024];
            struct sockaddr_in server_addr;
            struct hostent *host;
            int portnumber,nbytes;
            if(argc!=3)
         {
                printf("wrong 1");
                exit(1);
         }
            if((host=gethostbyname(argv[1]))==NULL)
         {
                printf("wrong 2");
                exit(1);
         }
            if((portnumber=atoi(argv[2])) <0)
         {
                printf("wrong 3");
                exit(1);
         }
            if((sockfd=socket(AF_INET,SOCK_STREAM,0))==-1)
         {
                printf("wrong 4");
                exit(1);
         }
            bzero(&server_addr,sizeof(server_addr));
            server_addr.sin_family=PF_INET;
            server_addr.sin_port=htons(portnumber);
            server_addr.sin_addr.s_addr=inet_addr("127.0.0.1");
            printf("we are trying to connect \n");
            if(connect(sockfd,(struct sockaddr*)(&server_addr),sizeof(struct sockaddr))==-1)
         {
                fprintf(stderr,"Connect Error:%s\a\n",strerror(errno));
                exit(1);
         }
            printf("our connection succeeded!\n");
            while(1)
         {
            printf("client:");
            scanf("%s",buffer);
            getchar();
                if((nbytes=send(sockfd,buffer,strlen(buffer),0))==-1)
         {
                printf("send failed with error \n");
                exit(1);
         }
            if((nbytes=recv(sockfd,buffer,strlen(buffer),0))==-1);
         {
                printf(stderr," Read Error:%s\n",strerror(errno));
                exit(1);
         }
            buffer[nbytes]='\0';
            printf("sever:%s\n",buffer);
         }
            printf("I have received:%s\n",buffer);
            close(sockfd);
            eixt(0);
        
    }

    Server  Part  :

     

    #include  <stdlib.h>
    #include  <stdio.h>
    #include  <errno.h>
    #include  <string.h>
    #include  <netdb.h>
    #include  <sys/types.h>
    #include  <netinet/in.h>
    #include  <sys/socket.h>

    #define BACKLOG 10

    int main(int argc, char *argv[])
    {
        int sockfd,new_fd;
        int ret;
        struct sockaddr_in server_addr;
        struct sockaddr_in client_addr;
        int sin_size,portnumber;
        char buffer[1024];
        if(argc!=2)
        {
            fprintf(stderr,"Usage:%s portnumber\a\n",argv[0]);
            exit(1);
        }
        if((portnumber=atoi(argv[1])) <0)
        {
            fprintf(stderr,"Usage:%s portnumber\a\n",argv[0]);
            exit(1);
        }
        if((sockfd=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP))==-1)
        {
            fprintf(stderr,"Socket error:%s\n\a",strerror(errno));
            exit(1);
        }
        bzero(&server_addr,sizeof(server_addr));
        server_addr.sin_family=AF_INET;
        server_addr.sin_addr.s_addr=htonl(INADDR_ANY);
        server_addr.sin_port=htons(portnumber);
        if(bind(sockfd,(struct sockaddr*)(&server_addr),sizeof(struct sockaddr))==-1)
        {
            fprintf(stderr,"Bind error:%s\n\a",strerror(errno));
            exit(1);
        }
        if(listen(sockfd,5)==-1)
        {
            fprintf(stderr,"Listen error:%s\n\a",strerror(errno));
            exit(1);
        }
        printf("we are waiting a connection on port %d\n",portnumber);
        
            sin_size=sizeof(struct sockaddr_in);
            if((new_fd=accept(sockfd,(struct sockaddr*)(&client_addr),&sin_size))==-1)
         {
                fprintf(stderr,"Server get connection from %s\n",inet_ntoa(client_addr.sin_addr));
                if(write(new_fd,buffer,strlen(buffer))==-1)
         {
                    fprintf(stderr,"Write Error:%s\n",strerror(errno));
                 exit(1);
         }
         }
            printf("We successfull ^^^^from %s:%d\n",inet_ntoa(client_addr.sin_addr),ntohs(client_addr.sin_port));
            printf("we are waiting to receive data...\n");
            while(1)
         {
                if((ret = recv(new_fd,buffer,sizeof(buffer),0))==-1)
         {
                    printf("receive failed!\n");
                 exit(0);
         }
                buffer[ret]='\0';
                printf("cilent: %s\n",buffer);
                printf("server:");
                scanf("%s",buffer);getchar();
                if((ret = send(new_fd,buffer,sizeof(buffer),0))==-1)
         {
                    printf("send failed!\n");
                 exit(0);
         }
         }
        
        
        close(new_fd);
        close(sockfd);
    }

    this is a example which an engineer do not know how to debug

    So I help to debug with It.

    Step One :

    compile  the Server and Client,e.g 

    compile as  chat_server , chat_client

    Step Tow:

     run the server at the back ground ,

        ./chat_server  1234 &    <----run this at back ground

     step three:

       run the client

        ./chat_client  127.0.0.1 1234

    operat according with the indication

       have fun !

     

     

     

  • Linux hanset Platform

    2008-4-06

    Linux Phone platform:

    1--GPE phone: support By  LiPs  see  http://www.lipsforum.org/  .

    Its member include:France Telecom; Arm ;Huawei(china) Cellon(china),Esmertec,Jaluna、MIZI Research(Korean),MontaVista Software(RT Linux kernel Provider) and So on

    France TeleCom is the main role & founder-member.

    --provide linux platform Application develope interface

    --Provide Linux platform SDK

    --Provide Linux Software Test Specification ,compatible with other than Lips Spec software

     

    2--LiMO      see   http://www.limofoundation.org/

    it member include Motorola ,Samsung ,Pansonic, NEC ,NTT And So on

     March 31, 2008—LiMo Foundation  global consortium of mobile leaders

    delivering an open handset platform for the whole mobile industry,

    announced today the on-schedule availability of LiMo Platform Release 1.

     

    Release 2 of the LiMo Platform is now being specified

    and developed within a collaborative process involving

     a range of LiMo members and is planned to be completed

    in a late 2008 timeframe.

    3--OpenMoKo   See  http://wiki.openmoko.org/wiki/Main_Page

    it is opensource Project .base on X -windows system.

    different with before ,it is only software project .No

    hardware related. Maybe not a Platform.

    4--Maemo   Nokia support  See www.maemo.org/

     though it is only for PDA (Personal Digital assistant) But it is powerful enough

    for Handset I think so .Now I think there is some software technical problem ,for

    example,x-windows is relatively too big,and our hardware(chipset)not so powerfull

    when all these problem has been resolved ,Maemo Platform will join Phone Platform.

    5--Android    Google   see   code.google.com/android/

    it is new for linux platform,but it is black horse in this field.

    I wish it can take great change to linux field.

     

    In Linux ,there is too many Orgnization,it is free for every one ,

    同时,我们也是否分散了力量?

     

     

Open Toolbar