zoukankan      html  css  js  c++  java
  • 《那些年啊,那些事——一个程序员的奋斗史》——26

         500台机器回来了,段伏枥就开始忙活起来,不过并不是修正程序的BUG,也不是要写新的程序,而是烧录系统!在这里不得不先说一下A6这GPS手持机的结构。A6使用的CPU是LH7A404,当开始上电之后,会运行NOR FLASH上的Bootloader,然后再由Bootloader去读取存储器上的系统文件,也就是NK.bin。而这存储器也很有意思,因为用的是CF卡接口,所以可以接两种设备,分别是标准的CF卡和1'寸的微硬盘。为什么Bootloader不直接放到NOR Flash呢?关于这个问题,段伏枥也问过老柳,但自从张俊的事件之后,老柳基本上就不会正面回答段伏枥问题,只是含含糊糊带过。没辙,段伏枥只好祭出无敌的度娘,没想到还真找到了答案。原因很简单,因为CPU上电后,PC指针会复位,对于ARM架构来说,会指向0x00000000地址,也就是说在该地址必须存放有代码。NOR Flash恰好可以线性寻址,也就是说NOR Flash的存储空间可以简单地通过物理地址来获取。但无论是标准的CF卡,还是微硬盘,都必须要有相应的控制器才能进行操作,可这时候系统都无法正常工作,又谈何来的对控制器进行设置呢?至于桌面的PC,其实原理也是大同小异,只不过这Bootloader被BIOS程序所替代。而BOIS程序往往固化到主板中,普通用户不必去关心,只需要将系统安装到硬盘中即可,所以往往产生了CPU启动后就能够直接读取硬盘的假想。
       
        所谓的烧录程序,其实很简单,不像现在需要特殊的工具,只需要将WinCE的系统文件NK.bin直接拷贝到CF卡即可。也就是说,段伏枥的工作只是简单的几个步骤:从盒子拿出CF卡,插入读卡器,从电脑中拷贝NK.bin文件和相应的应用程序,最后将这些已经拷贝好程序交给生产部即可。这是一个非常枯燥的工作,但段伏枥却干得不亦乐乎,想着反正自己是新人,能多干点就多干点,至少让公司觉得这人没有白请。而这留下的唯一恶果是,因为打开装有CF卡的盒子,需要大拇指用力掰,可能一两个还不觉得什么,一旦多了,大拇指就生疼,结果段伏枥好几天大拇指都无法使劲。
       
        公司对于A6的定位本来是有两种版本的,使用1G CF卡的精简版和8G 微硬盘的豪华版。只是在测试的时候发现,这微硬盘虽然号称防震,但那也是在移动不频繁的时候,根本就不能用在汽车颠簸的环境。在张俊他们的测试中经常发现,只要是用微硬盘的版本,在汽车上没用多久,系统就起不来了,即使将微硬盘接到读卡器中,电脑业无法识别。这个就像笔记本,如果经常在颠簸的汽车上使用,估计没过多久,硬盘坏道什么的都出来了,说不定什么时候就去见了上帝。也正是因此,所以在后续的计划中,就将这8G微硬盘的版本给放弃了。
       
        咋一看,不使用微硬盘似乎避免了系统无法启动的问题,但实际上这500台的机器还是存在了很大的隐患。因为CF插槽是那种针式的,就像插件的元器件一样,在汽车颠簸的这个环境中很容易因为抖动,而导致接触不良!市面上的CF卡大多不是用在车载环境,而是数码相机中。数码相机在日常的使用,颠簸的概率非常低,所以很少会出现接触不良的问题,但放到车载环境,却是致命的弱点。不知道是应该说幸运还是悲剧,这致命的弱点在样机的测试中没有被检测出来,因为样机用的CF连接线是日本进口的,而批量产所使用的却是国产!不要小看这点区别,对于连接座这小玩意来说,日本做的质量确实是非常棒,国产的虽然样子颜色和日本的一模一样,但质量却根本不能同日而语,往往用了一段时间之后,不是引脚变形了,就是排线断路了。这点不能不说是国人的悲哀,很多简单的东西,国人只是做得模样逼真,但却是真正的金玉其外败絮其中。不仅连接座是这种情况,一把小小的螺丝刀也是如此。做精密仪器的都知道,他们手上用的那不起眼的小小的螺丝刀,就是日本原装进口的,其价格是国产同类的五六十倍。那为什么不用国产的呢?不是不用,是不敢用啊!因为国产的螺丝刀,在用了几次之后,刀口的边缘就会磨损,就不能和螺丝紧密接触,扭动的时候容易造成滑丝,从而导致螺丝无法正常旋扭,最后导致整个设备的报废。如此大的风险,试问谁还敢用国产的螺丝刀?这不能不说是国人的一大伤痛,一把小小的螺丝刀都无法做好,也难怪于国产的精密仪器为何如此之少了。
       
        正是因为这国产的连接座,在将产品交给客户三周之后,客户将所有的产品全部退回。理由很简单,也非常充分:大部分机器在汽车上实测之后一段时间,系统就无法启动!也正是因为这点,成为了黄华中攻击张俊的理由:连接座搞错,这是生产部的事情,延误了工作的进展!对于此,张俊只能独自承受,因为经常无法启动,确实和连接座有关。但这真的就和黄华中没有任何关系吗?如果当时不是选择以CF卡插槽作为存储器的连接座的话,会有今天的问题吗?即使全部换用日本的卡座,其实也不是完美解决了这个问题,因为过一段时间之后,在汽车这颠簸的环境之下,也会导致接触不良。
       
        也许正是这一批产品大大冲击了Micheal的信念,而黄华中的一些做法,也暗暗与之不符。虽然段伏枥对于人情世故知道得不多,也比较迟钝,但这一次,他感觉到,似乎有暴风骤雨要来。其实,这点研发部的同事都感觉到,其实最近一段时间,工作已经没有什么新任务了,大家过来上班,最多也就上上网,然后就按时回家。至于乱成一团的生产部,很显然,黄华中并不打算让研发部的人伸以援手。
       
        这样好吗?大家不都是同一个公司的吗?段伏枥这样暗暗想着,但他其实也无能为力:限于经验水平,对硬件设备一窍不通,根本无法帮上忙,即使有心,也无力。不管怎么说,正是因为这连接座的事情,新型号的产品,就这么彻彻底底地停摆了。
       
        这连接座,需要从日本订货,交期为1个月。对于急不可耐的Micheal来说,这是非常致命的,因为客户将机器都退回来,也就意味着收不到货款,也就没有任何营收。不要小看这五百台机器所带来的负累。一般来说,生产机器的时候,并不是要生产500台就买500台的料,而是要有冗余,比如备料要600台;还有一点,有些料件必须成盘地购买,简单点来说,即使你要五百颗料,也必须购买整盘一千颗。因此这500台的物料一下来,公司花了两百多万。再加上员工的工资,房租,水电什么的,估计Micheal感觉有点承受不了了,因此大手一挥:将广州分部给砍了!
       
        只见那天周总回到办公室,收拾了一些文件,将一些资料转交给同事,神情非常沮丧。当然咯,如果不沮丧就奇怪了,毕竟周总觉得他可以在该领域能做出一番惊天伟业。现在就这么走了,颇有一种壮志未酬身先死的感慨。可是有什么办法呢?公司资金紧张,产品暂时卖不了,研发部不敢砍,生产部不能砍,唯一能下手的,不就只有销售分部了吗?
       
        距离请周总吃了鱿鱼后不久的一天早上,因为路上塞车,前台没有按时到公司,并且钥匙也只有他一人拿着,于是大家只能聚集在门口谈天说地。这时候,Micheal也来了,得知该情况,也只能发发脾气,也没多大的办法。谁让大家都这么凑巧呢,有钥匙的人今天都忘记带了,记得带的人却偏偏还塞在路上。
       
        段伏枥正百无聊赖的时候,Micheal见他旁边没人,悄悄地走过来,说:“等一下你跟我来!”说罢,往楼梯口走去。
       
        段伏枥满脸狐疑,啥意思?本来还想细问,但Micheal丢下这话就立马转身走了。老板找自己谈话?什么意思?莫非也要被请一顿鱿鱼饭?怀着忐忑不安的心情,段伏枥往Micheal方向的楼梯口走去。
       
        Micheal已经站在楼梯口等段伏枥了,还没等他开口,Micheal就抢先说了:“我觉得你这段时间工作不错,研究决定,给你加工资。这么着,先给你加到3500,后续表现好我们再加。”
       
        什么?加工资?不是炒鱿鱼?段伏枥一下子懵了,愣住了。
       
        Micheal继续说到:“这件事只有你知道,不要跟别人说!”
       
        段伏枥忙不送迭地说:“嗯,好!那是当然”
       
        Micheal见事情已经谈妥,对段伏枥说:“嗯,就这事。你先回去吧。”
       
        段伏枥听了,连忙说:“好好!”
       
        一整天,段伏枥沉迷于兴奋与喜悦之中,在回家的公交上,还不时地露出微笑。一回到出租屋,就急忙跟伍定轩嚷开了此事。
       
        但伍定轩一听,问道:“你不是说公司已经财政非常困难了,销售部都已经撤掉了,为什么还要给你加工资?”
       
        段伏枥转念一想,是啊,为什么呢?公司资金现在紧张,为何这时候会给自己加工资?难道有什么古怪?但从另一个角度想,光脚的还怕穿鞋的?反正自己也没啥东西,工资涨一点有什么不好?于是,段伏枥又坦然了,又开始沉浸于一片和谐欢乐的海洋之中。
       
       
  • 相关阅读:
    【反射】Java反射机制
    Composer教程之常用命令
    Composer教程之基础用法
    Composer教程之初识Composer
    Composer 的结构详解
    现代 PHP 新特性系列(七) —— 内置的 HTTP 服务器
    现代 PHP 新特性系列(一) —— 命名空间
    现代 PHP 新特性系列(二) —— 善用接口
    现代 PHP 新特性系列(三) —— Trait 概览
    现代 PHP 新特性系列(四) —— 生成器的创建和使用
  • 原文地址:https://www.cnblogs.com/wangfengju/p/6172991.html
Copyright © 2011-2022 走看看