范文健康探索娱乐情感热点
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

CEO亲自写代码登上热榜,从零开始打造裸金属树莓派

  10 月 10 日消息CEO 亲自写的代码是啥样?来自 RealVNC 公司的 CEO 说,自己常年当管理者,代码生疏了,所以决定重拾一下程序员工作,写一点树莓派的代码。
  结果,一不小心就上了技术论坛 Hacker News 热门。
  这串代码究竟是什么?打开这位 CEO 的 Twitter 一看,是一段小游戏。
  花了一年时间就写了个这?当然不是,这位 CEO 可是从零开始打造的这款游戏,连系统启动文件都是自己写的 。
  通常我们使用树莓派都会在 SD 卡上刷写好操作系统,其实树莓派还能从零开始打造成一款"裸金属"(Bare Metal)计算机。
  所谓"裸金属"就是没有操作系统的计算机,直接在逻辑硬件上执行指令。这位 CEO 说,打造一个裸金属系统是他儿时的志向。
  所以就有了这串,从零开始到成功运行 Hello World,再到运行小游戏的程序。从启动硬件到 Hello World
  目前,该项目已经完成了 12 章,仍在 GitHub 上继续更新中 ,截至今天已经收获了 1.6k 星。
  项目内容有:启动、构建基本代码、运行 HelloWorld、调用蓝牙声音硬件等。
  在编写代码之前先要准备树莓派 4 的周边硬件:HDMI 线、micro-SD 卡以及 USB 转 TTL 线。
  由于编译过程是在电脑上进行,而程序是在树莓派上运行,因此还要在电脑上安装交叉编译器 。
  接下来开始引导树莓派启动:
  树莓派 4 运行的第一个代码需要用汇编语言编写,之后由 C 语言来编写内核。
  写好启动代码后,再制作 makefile 文件进行交叉编译。CFILES=$(wildcard*.c) FILES=$(CFILES:.c=.o) GCCFLAGS=-Wall-O2-ffreestanding-nostdinc-nostdlib-nostartfiles GCCPATH=../../gcc-arm-10.3-2021.07-x86_64-aarch64-none-elf/bin all:cleankernel8.img boot.o:boot.S $(GCCPATH)/aarch64-none-elf-gcc$(GCCFLAGS)-cboot.S-oboot.o %.o:%.c $(GCCPATH)/aarch64-none-elf-gcc$(GCCFLAGS)-c$<-o$@ kernel8.img:boot.o$(OFILES) $(GCCPATH)/aarch64-none-elf-ld-nostdlibboot.o$(OFILES)-Tlink.ld-okernel8.elf $(GCCPATH)/aarch64-none-elf-objcopy-Obinarykernel8.elfkernel8.img clean: /bin/rmkernel8.elf.o.img>/dev/null2>/dev/null||true
  运行 make 后构建内核映像 kernel8.img,将镜像文件复制到 SD 卡中,这样就可以启动树莓派了。
  不过树莓派在这一通操作后只能运行启动画面,之后只剩下一个空的黑屏。
  然后就是让树莓派程序员熟悉的"Hello World"程序,但是在一台黑屏的机器上如何运行呢?这就需要用到 UART 串行通信。
  刚刚准备的 USB 转 TTL 线这时候就派上了用场。
  将 TTL 的 RX 引线(白色)链接到 GPIO 的 TXD 引脚上,TX 引线(绿色)链接到 GPIO 的 RXD 引脚上,地线(黑线)连接到 Ground 引脚上。
  电脑上还要安装 PuTTY,将链接方式选择为"Serial",Speed 设置为 115200
  #include"io.h" voidmain() { uart_init(); uart_writeText("Helloworld!\n"); while(1); }
  这里的头文件 io.h 也不存在,需要自己定义。
  但是此时的树莓派还有没字体文件,也就是屏幕无法正常显示英文字母,也需要自定义。经过一系列操作后,这位 CEO 终于在屏幕上成功显示了"Hello world!"和几个几何图形。
  编程并没有到此截止,这位 CEO 后面又实现了蓝牙互传信息、播放音频文件等操作 。他还表示,项目还在持续更新中。关于作者
  "裸金属"树莓派的作者 Adam Greenwood-Byrne 毕业于牛津大学,2009 年加入 RealVNC 担任销售经理,2018 年成为这家公司 CEO。
  他的 GitHub 主页上目前只有一个项目,第一章内容是他在疫情隔离期间完成的,之后项目就处于休眠状态。
  不过从今年的活跃度来看,他从今年开始又重拾了该项目,开始认真写代码了。
  项目 GitHub 链接:点击打开

RX6700系列来了AMD今晚发布新款中端显卡IT之家3月3日消息在推出了RX6900XTRX6800XT和RX6800三款16GB大显存的显卡之后,AMD将在3月4日零点发布其RX6700系列中端显卡。根据外媒VideoCa大疆发布DJIFPV畅飞配件包含两块44。4Wh电池,充电功率90WIT之家3月2日消息大疆今晚发布了DJIFPV穿越机,同时发售的还有众多配件产品以及DJI穿越摇杆电池等产品。DJIFPV畅飞配件包具备2块DJIFPV智能飞行电池和一个电池管家,联想公布ThinkVisionCreatorExtreme高端显示器4K99DCIP3色域,1200nit峰值亮度IT之家3月1日消息联想官网现已公布一款ThinkVisionCreatorExtreme高端显示器的详细参数,27英寸4K分辨率,1200nit峰值亮度。IT之家了解到,这款显示AOC发布三款P2系列专业显示器最高4K75Hz,约2928元IT之家3月1日消息AOC今日发布了多款P2系列专业显示器,外观简洁,面向专业设计师用户,型号包括U32P2Q32P2U28P2A。该系列显示器均具备超过100sRGB色域,并有着小米Redmi新款27英寸IPS显示器上架1080P,三微边设计,售价799元感谢IT之家网友不再投gao的线索投递!IT之家3月1日消息今天,小米Redmi显示器新款上架京东预售,搭载了27英寸IPS硬屏,采用了三微边设计,另有低蓝光纤薄机身特点,支持三年宏碁掠夺者X25显示器上架360Hz刷新率GSYNC芯片,售价5999元IT之家2月28日消息宏碁于去年6月份推出了掠夺者X25显示器,刷新率达到了惊人的360Hz,达到了主流家用显示器刷新率的6倍。现在,该显示器已在网上商店上架,售价5999元。IT攀升显示器新春特惠27英寸2K高达联名款,售价1899元IT之家2月25日消息攀升显示器现已开启新春特惠。其中,27英寸2K高达联名款显示器27Q1H支持165hz高频刷新率,拥有1ms响应速度,售价1899元。这款型号为27Q1H的攀联想拯救者R9000P2021详细配置公布HDMI2。1接口,大下巴没了IT之家3月2日消息联想海外官网现已公布了拯救者R9000P2021(Legion5Pro16ACH6H)的详细参数。联想官网的数据显示,拯救者R9000P将可选R75800H和R联想公布新款YOGADuet13升级至11代酷睿IT之家3月2日消息去年6月份,联想YOGADuet13英寸二合一平板笔记本上市,十代i516GB内存512GBSSD首发售价6999元,标配触控笔和键盘。现在,联想海外官网已经有联想小新Air142021锐龙版明天开售搭载R55500UIT之家3月1日消息根据联想小新官方的消息,小新Air142021锐龙版3月2日0点开售,搭载R55500U处理器,定金预售用户3999元,首发价4099元。IT之家了解到,小新A联想推出拯救者R7000冰魄白游戏本明日首发5799元IT之家3月1日消息联想推出了拯救者R7000冰魄白配色,R54600HGTX1650配置3月2日首发5799元。IT之家了解到,拯救者R7000冰魄白采用白色机身,搭配幻彩烧色观
华为MateStation台式机上线官网搭载AMDR74700G,配智慧键盘IT之家11月20日消息华为MateStationB515台式机套装现已上线华为官网,包括主机显示器和配套智能鼠键。根据官网信息,华为台式机外观采用了格栅元素,小型化设计,前置US超值轻薄办公本推荐ThinkPad翼14Slim配备10代酷睿i3,仅2999元IT之家11月25日消息对于大部分上班族来说,笔记本电脑已经成为了必备的工具。如果你需要的是一台外形轻薄性能充足同时又稳定可靠的笔记本的话,今天推荐的ThinkPad翼14Slim壹号本OneGxPro掌机公布首发英特尔11代酷睿Y系列处理器IT之家11月4日消息壹号本官方微博发布视频介绍了即将推出的壹号本OneGxPro,首发英特尔11代酷睿Y系列处理器。壹号本OneGxPro的外观与上半年推出的ONEGX基本相同,英特尔收购以色列初创公司Cnvrg。io,继续巩固其机器学习业务11月4日消息,据国外媒体报道,英特尔继续通过收购优质的初创公司,深耕机器学习和人工智能领域。该公司近日收购了一家以色列公司Cnvrg。io建立和运营一个供数据科学家构建和运行机器英特尔XeHPNEO独显现身,搭载4096流处理器IT之家11月4日消息英特尔现已发布了首款独显XeMax,并将在今年交付基于XeLP架构的英特尔服务器GPU,将在2021年推出XeHP和XeHPG产品。现在,一款代号为NEO的X英特尔10nm赛扬和奔腾超低功耗处理器现身数据库,21年Q1发布感谢IT之家网友伊吹公子的线索投递!IT之家11月3日消息感谢IT之家网友伊吹公子的热心线索投递,此前曝光的多款英特尔JasperLake凌动系列CPU现已可在英特尔官方数据库中查英特尔11代桌面酷睿RocketLake外观曝光IT之家11月3日消息B站Up主結城安穗YuuKiAnS称拿到了一张英特尔11代桌面酷睿处理器的图片,从图片来看,11代酷睿RocketLakeS采用了与上代CometLakeS系最新爆料英伟达RTX3080Ti搭载10496CUDA核心,20GB显存IT之家11月4日消息根据外媒VideoCardz的报道,可靠爆料者Kopite曝光了英伟达RTX3080Ti的参数规格。爆料称,英伟达RTX3080Ti将拥有与RTX3090相同渠道消息英伟达将在Q4季度增加RTX30系列供应量IT之家10月30日消息根据博板堂的渠道消息,英伟达将增加RTX3000系列新品Q4季度供应量,各AIC厂商能分配的具体数量暂时没有明确,但是相对Q3季度肯定增长较多。博板堂的消息AMDR55600XCineBench跑分流出单核跑分突破600大关感谢IT之家网友Temmo1234的线索投递!IT之家11月3日消息根据外媒VideoCardz的报道,LinusTechTips论坛用户Jumper118今天发布了AMDRyze12代酷睿初相见,英特尔向Linux添加AlderLakeS处理器的支持代码IT之家10月27日消息据外媒Phoronix报道,英特尔已经开始在其LinuxGPU驱动程序中添加了对其第12代AlderLakeSCPU的支持,以及对它的初始Neo项目(Com