当前位置:首页>安卓APP>第十二章 安卓第一行代码

第十二章 安卓第一行代码

  • 2026-02-08 10:32:19
第十二章 安卓第一行代码

深秋的北京,天黑得越来越早。

下午五点,窗外已经暗沉沉的了。
办公室里亮着灯,惨白的日光灯管把每个人的脸都照得发青。
空气里有方便面、焊锡和熬夜的混合气味——一种属于工程师的、特有的、颓废又亢奋的气味。
赵志明趴在电脑前,眼睛死死盯着屏幕,眼白上布满了血丝。
他已经三天没回家了,胡子拉碴,头发油腻得能炒菜。
屏幕上是密密麻麻的代码,黑色的背景,绿色的字符,像某种神秘的咒语。
“又报错了。”他嘟囔着,用力敲了一下回车键。
屏幕上弹出一个红色的错误提示:“Segmentation fault (core dumped)”
“操!”他骂了一句,把键盘推开。
这是第三十七次编译失败。
安卓系统移植到他们选的硬件平台上,像是一双42码的脚非要塞进38码的鞋里——哪儿哪儿都不对劲。
处理器架构不兼容,内存管理有问题,驱动程序缺失……每一个坑都能让人折腾好几天。
“老赵,”张永强端着杯速溶咖啡走过来,看了眼屏幕,“还是不行?”
“不行。”赵志明用力揉了揉头发,“内核启动到一半就崩。我怀疑是内存地址映射的问题。”
“改设备树了没?”
“改了,没用。”
张永强叹了口气,在他旁边坐下。
这个四十多岁的老工程师,眼角已经有了深深的鱼尾纹。他盯着屏幕看了一会儿,突然说:“要不……换个方案?”
“什么方案?”
“用现成的开发板。”张永强说,“TI的OMAP系列,有官方的安卓支持。虽然贵点,但能省时间。”
赵志明没说话。
他知道张永强说得对。
用现成的方案,风险小,进度快。
但他们这个项目,从一开始就选了一条最难的路——自己设计硬件,自己移植系统。
为什么?
因为林深说:“我们要掌握核心技术。”
当时所有人都觉得他疯了。
一个刚起步的小公司,要什么核心技术?
能做出东西来就不错了。
但现在,赵志明有点理解这句话了。
用现成的方案,你是组装厂。
自己从头搞,你才叫研发。
可是……时间呢?
钱呢?
“林总怎么说?”赵志明问。
“还没问。”张永强喝了口咖啡,“但我觉得……该问问了。再这么耗下去,三个月别说原型机,连系统都跑不起来。”
正说着,门开了。
林深和夏语一前一后走进来。
林深手里拎着两个塑料袋,里面装着盒饭。
夏语抱着笔记本电脑,脸上没什么表情。
“吃饭。”林深把塑料袋放在会议桌上,“红烧肉,宫保鸡丁,素炒青菜,自己拿。”
办公室里响起一阵窸窸窣窣的声音。
工程师们放下手里的活,围过来拿饭。
三天了,林深每天准时送饭,都是附近餐馆点的,三荤一素,保证营养。
赵志明没动,还坐在电脑前。
“老赵,”林深拿了盒饭走过来,放在他桌上,“先吃饭。”
“林总,”赵志明抬起头,声音有点沙哑,“我想跟你商量个事。”
“说。”
“系统移植……进展太慢了。”他指着屏幕,“内核都启动不了。我觉得,我们该换个方案。”
“什么方案?”
“用TI的开发板。”赵志明说,“有官方支持,三个月肯定能出原型。”
林深没立刻回答。
他拉过一把椅子,在赵志明旁边坐下,看着屏幕上那堆错误信息。
“你觉得问题在哪儿?”他问。
“硬件和软件的适配。”赵志明说,“我们选的处理器,三星的S3C6410,性能不错,价格也合适。但安卓对它支持不好,很多驱动要自己写。”
“那就自己写。”
“时间不够。”赵志明急了,“林总,我知道你想搞核心技术,但现实是……我们没那个实力。现在公司就十二个人,一半连安卓是什么都不知道。三个月?三年都未必搞得定!”
他说完,喘着粗气,眼睛死死盯着林深。
办公室里安静下来。
所有人都停下手里的动作,看着这边。
张永强低下头,假装吃饭。
夏语站在门口,抱着电脑,眼神平静。
林深沉默了几秒。
然后,他笑了。
“老赵,”他说,“你知道安卓系统有多少行代码吗?”
赵志明愣了一下:“大概……几百万行?”
“一千两百万行。”林深说,“而且还在增加。谷歌的工程师,用几年时间写出来的东西。你觉得,我们十二个人,三个月能搞定吗?”
“那你还……”
“我没说我们要搞定整个安卓。”林深站起来,走到白板前,拿起马克笔,“我们要搞定的,只是能让它在我们硬件上跑起来的那部分。”
他在白板上画了个简图。
“内核启动,”他写下一个词,“设备驱动,”又一个词,“硬件抽象层,”再一个词,“就这三块。其他的,用谷歌现成的。”
“可是这三块也够难的……”赵志明说。
“难才值得做。”
林深转身,看着所有人,“如果什么都用现成的,我们和深圳那些山寨机厂有什么区别?他们也能三个月出产品,然后呢?打价格战,拼谁成本更低,最后大家一起死。”
他顿了顿,声音沉下来:“我们要做的,不是山寨机。是智能手机。是能打电话、能上网、能装应用的,真正的智能机。而要做到这一点,就必须掌握底层的技术。否则,永远都是组装厂,永远被人掐脖子。”
办公室里鸦雀无声。
“林总,”张永强放下饭盒,开口了,“你说得对。但……时间呢?钱呢?我们现在账上还有多少钱,能烧多久?”
这个问题很现实。
所有人都看向林深。
林深从口袋里掏出烟,点了一根。
烟雾在灯光下升腾,模糊了他的脸。
“账上还有九百万。”他说,“够烧半年。半年内,必须出原型,必须拿到下一轮融资。否则……”
他没说下去。
但所有人都明白。
否则,公司倒闭,大家散伙。
“所以,”林深把烟掐灭,“我们没有退路。要么三个月做出来,要么三个月后滚蛋。就这么简单。”
他说得很平静,但每个字都像锤子一样砸在人心上。
赵志明低下头,看着自己油腻的键盘。
张永强叹了口气。
其他工程师面面相觑,表情复杂。
只有夏语,还站在门口,眼神依然平静。
“林总,”她突然开口,“内核启动的问题,我可能找到了原因。”
所有人都看向她。
“什么原因?”赵志明问。
“内存映射。”夏语走过来,把笔记本电脑放在桌上,“我分析了内核日志,发现系统在初始化内存管理单元的时候,用了错误的页表配置。”
她调出一段代码,指着屏幕:“这里,地址映射的范围设错了。应该是0x40000000到0x5FFFFFFF,但代码里写成了0x40000000到0x4FFFFFFF。少了一个G的地址空间。”
赵志明凑过去看。
几秒钟后,他猛地一拍大腿:“操!真是这儿!”
他立刻坐回自己的电脑前,噼里啪啦地敲键盘。
修改代码,保存,重新编译。
所有人都围了过去。
屏幕上的字符快速滚动,编译器在运行。进度条一点点往前走,10%……30%……50%……
办公室里安静得能听见心跳声。
70%……90%……100%!
编译成功。
赵志明深吸一口气,敲下回车键。
系统开始启动。
黑色的屏幕上,白色的字符一行行出现:
“Initializing kernel ... OK”
“Mounting root filesystem ... OK”
“Starting init process ... OK”
“Android runtime starting ...”
然后,屏幕亮起。
一个简陋的、线条粗糙的安卓机器人标志,出现在屏幕中央。
下面一行小字:“Android 1.0”
短暂的沉默。
然后,爆发出欢呼声。
“成了!他妈的成了!”
“夏语牛逼!”
“老赵牛逼!”
赵志明靠在椅背上,长长地吐出一口气,眼眶有点发红。
三天三夜,终于看到曙光了。
张永强用力拍他的肩膀,笑得合不拢嘴。
夏语站在人群外,嘴角微微上扬,但很快又恢复了平静。
林深没说话。
他只是看着那块屏幕,看着那个粗糙的安卓标志,看了很久。
然后,他转身,走到窗边。
点了根烟。
烟雾在夜色中升腾,消散。
第一行代码,写完了。
第一个坎,迈过去了。
但前面,还有无数个坎。
芯片,屏幕,电池,模具,生产线……
还有钱。
还有时间。
还有……那些在暗处盯着的人。
但他不怕。
因为已经踏出了第一步。
最艰难的第一步。
身后,工程师们还在欢呼。
有人已经开始讨论下一个问题:触摸屏驱动该怎么写。
赵志明走过来,站在他旁边。
“林总,”他说,声音还有点激动,“内核跑起来了。接下来……该搞驱动了。”
“嗯。”林深把烟掐灭,“分下工。你带系统组,继续优化内核。老张带硬件组,把触摸屏的电路设计出来。夏语……”
他回头,看向那个站在人群外的女孩。
“你负责写驱动。”他说,“需要什么资料,买。需要什么设备,买。钱不是问题。”
“明白。”夏语点头。
“还有,”林深顿了顿,“从今天起,你搬到我办公室隔壁。那里给你当实验室,24小时能用。”
夏语愣了一下,然后点头:“好。”
分配完任务,林深走出办公室。
楼道里很暗,声控灯坏了。
他摸黑下楼,走到大门口。
手机震了。
是沈冰。
短信:“沙龙改到明晚。嘉宾名单更新了,发你邮箱。另外,穿好点,这次有记者。”
我回:“好。”
收起手机,我抬头看天。
夜空漆黑,没有星星。
只有远处工地的塔吊上,亮着一盏孤零零的灯,像一颗倔强的星星。
我站了很久。
直到腿有点麻。
才转身,重新上楼。
办公室里,工程师们已经回到工作岗位。
敲键盘的声音,讨论问题的声音,焊接电路板的滋滋声……混杂在一起,嘈杂,但充满生机。
我走到自己的小隔间,关上门。
打开电脑,登录邮箱。
果然有封新邮件,附件是嘉宾名单。我打开,扫了一眼。
看到几个熟悉的名字。
陈昊。
柳薇薇。
他们也收到了邀请。
我笑了。
真巧。
那就……明晚见。

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-02-08 15:39:41 HTTP/2.0 GET : https://c.mffb.com.cn/a/467827.html
  2. 运行时间 : 0.114087s [ 吞吐率:8.77req/s ] 内存消耗:4,257.73kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=be0008fd07f5004acd4f7a24836da90f
  1. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/runtime/temp/cefbf809ba1a84190cb04b0cb7abcf79.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/c.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.001062s ] mysql:host=127.0.0.1;port=3306;dbname=c_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001605s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000738s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000687s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001402s ]
  6. SELECT * FROM `set` [ RunTime:0.000607s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001581s ]
  8. SELECT * FROM `article` WHERE `id` = 467827 LIMIT 1 [ RunTime:0.001247s ]
  9. UPDATE `article` SET `lasttime` = 1770536381 WHERE `id` = 467827 [ RunTime:0.004223s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000693s ]
  11. SELECT * FROM `article` WHERE `id` < 467827 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001189s ]
  12. SELECT * FROM `article` WHERE `id` > 467827 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001421s ]
  13. SELECT * FROM `article` WHERE `id` < 467827 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001764s ]
  14. SELECT * FROM `article` WHERE `id` < 467827 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001384s ]
  15. SELECT * FROM `article` WHERE `id` < 467827 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.005900s ]
0.117813s