-
- Linux 程序编译过程详解
- 计算机程序设计语言通常分为机器语言、汇编语言和高级语言三类。高级语言需要通过翻译成机器语言才能执行,而翻译的方式分为两种,一种是编译型,另一种是解释型。因此我们基本上将高级语言分为两大类,一种是编译型语言,例如C,C++,Java,另一种是解释型语言,例如Python、Ruby、MATLAB、JavaScript。本文将介绍如何将高层的C/C++语言编写的程序转换成为处理器能够执行的二进制代码的过程,包括四个步骤:预处理(Preprocessing)编译(Compilation)汇编(Assem
- LINUX . 系统教程 1237 2024-02-05 13:09:15
-
- 探讨 Linux CPU 的上下文切换
- 众所周知,Linux是一个支持多任务的操作系统,它能同时运行的任务数量远远超过CPU的数量。当然,这些任务实际上并不是真正同时运行的(对于单个CPU),而是因为系统会在短时间内将CPU轮流分配给这些任务,从而营造出多个任务同时运行的假象。CPU上下文(CPUContext)在每个任务运行之前,CPU需要知道从哪里加载和启动该任务。这意味着系统需要提前设置好CPU的寄存器和程序计数器。CPU寄存器是内置于CPU中的小型但非常快速的内存。而程序计数器用于存储CPU当前正在执行的指令位置或下一条要执行
- LINUX . 系统教程 718 2024-02-05 13:06:10
-
- 学STM32需要学会哪些才建议去学Linux?
- 今天分享一个知乎里一个嵌入式相关热门问题:学STM32需要学会哪些才建议去学Linux?一个很不错的回答:“作者:snowdream链接:https://www.zhihu.com/question/357775329/answer/2338874463”作为一枚嵌入式软件开发的老程序员,答主也是经历过STM32开发向Soc+Linux开发的技术栈转变过程。总的来说,具备stm32嵌入式开发技能对于掌握Soc+Linux的嵌入式开发有一定的促进作用,但是如果题主志在走向Linux应用开发道路,那
- LINUX . 系统教程 1029 2024-02-05 13:03:42
-
- Linux 新系统易用性向 Windows 看齐
- 在嵌入式开发过程中,许多工程师会选择使用Linux系统。但是,实际上,在嵌入式开发中使用的工具,仍然有相当一部分只支持Windows系统。尽管如此,我们必须承认的是,使用Windows系统的用户比使用Linux系统的用户要多得多。特别是在嵌入式开发人员中,绝大部分都是在Windows环境下安装虚拟机以使用Linux系统。因此,为了适应更多的用户需求,现在Linux系统的易用性也开始向Windows系统看齐。具体做法是,增加可视化操作界面,提供更加友好的用户体验。例如,在Linux中增加类Wind
- LINUX . 系统教程 908 2024-02-05 13:03:11
-
- Linux 环境变量配置全攻略,初学者必会…
- 在自定义安装软件时,经常需要配置环境变量。下面是各种配置环境变量的方法。在下面的例子中,我们使用的环境如下:操作系统:Ubuntu14.0用户名:uusama需要配置MySQL环境变量的路径:/home/uusama/mysql/bin在Linux中查看环境变量以下是查看环境变量的方法:使用export命令可以显示当前系统定义的所有环境变量。使用echo$PATH命令可以输出当前的PATH环境变量的值。执行这两个命令的效果如下所示:uusama@ubuntu:~$exportdeclare-xH
- LINUX . 系统教程 914 2024-02-05 13:00:18
-
- 什么是Linux内核空间与用户空间?
- 内核空间和用户空间对于32位操作系统而言,它的寻址空间(也称为虚拟地址空间或线性地址空间)大小为4G(即2的32次方)。这意味着一个进程可以拥有最大4G的地址空间。操作系统的核心是内核(kernel),它是与普通应用程序分离的,有权限访问受保护的内存空间和底层硬件设备。为了保证内核的安全,现代操作系统通常限制用户进程直接操作内核。通常,这通过将虚拟地址空间划分为两个部分来实现,即内核空间和用户空间。就Linux操作系统而言,最高的1G字节(从虚拟地址0xC0000000到0xFFFFFFFF)被
- LINUX . 系统教程 1317 2024-02-05 12:57:09
-
- Linux命令行万能解压命令
- 这次我将和大家分享一个非常实用的万能解压命令。在Linux系统下,有多种压缩包格式可供选择,而在命令行下解压不同格式的压缩包时,需要使用不同的命令和参数。对于我们来说,记住这么多命令是相当困难的。不过,我们可以编写一个万能的解压命令,以替代这些繁琐的解压命令,这样我们只需要记住一条命令即可。以下是具体的步骤分享:1、在用户目录创建一个.autoex.sh脚本脚本的内容如:#copyfromhttps://ynome.wordpress.com/2013/04/14/linux-%E9%80%9A
- LINUX . 系统教程 1241 2024-02-05 12:54:23
-
- 嵌入式Linux项目开发的几个步骤
- 微控制器制造商提供的开发板和相关的软件项目例程,在工程师开始新设计时通常能提供很大的帮助。然而,在设计项目的早期阶段完成后,在进一步设计时,制造商提供的软件可能会引发一些问题。对于使用实时操作系统作为应用程序代码平台的设计来说,也面临着许多挑战。比如,如何有效地将功能分配给不同的并行任务,如何设计可靠的进程间通信,以及如何在硬件上对整个软件包进行测试等问题。越来越多的OEM厂商发现,避免上述问题的最佳方式是使用基于开源、经过验证、可扩展,并能运行在各种硬件平台上的Linux操作系统来开始新的设计
- LINUX . 系统教程 1331 2024-02-05 12:51:22
-
- Linux 上的最佳白板应用程序
- “我们将介绍几款适用于Linux系统的白板应用程序,相信这些信息对您会非常有帮助。请继续阅读!”一般来说,数字白板是一种用于大型互动显示面板的工具,常见的设备类型包括平板电脑、大屏手机、触控笔记本和表面显示设备等。当教师使用白板时,您可以使用触控笔、手写笔、手指甚至鼠标在设备屏幕上进行绘画、书写或操作元素。这意味着您可以在白板上拖动、点击、删除和绘画,就像在纸上使用笔一样。然而,要实现这一切,需要有一款软件来支持这些功能,并实现触控和显示之间的精细协调。目前市面上有许多商业应用可以完成这项工作。
- LINUX . 系统教程 1420 2024-02-05 12:48:10
-
- UNIX、Linux、iOS、Android 的发展及它们之间的关系
- Unix,简化形成了Linux,Linux则是Android的内核,而苹果则是使用unix系统作为iOS和MacOS的内核。一、几个系统出现的时间二、UNIX系统的诞生1969年,贝尔实验室的研究员肯•汤普森,编写了一款计算机游戏SpaceTravel,先后在多个系统上运行,然而效果不理想,所以决定自己开发操作系统,就这样UNIX诞生了。贝尔实验室存在的时候就是永久的神,最后却因为反垄断被拆分,也预示着一个贝尔实验室时代的结束,当真让人叹息。三、Linux系统的诞生1991年,李纳斯•托瓦兹大学
- LINUX . 系统教程 1173 2024-02-05 12:45:11
-
- Linux虚拟内存,你理解到位了?
- 前言最近,组内有一个我非常期待的分享主题:”Linux的虚拟内存”。某天晚上加班时,我们在讨论虚拟内存的概念时,我们的领导发现几位同事对虚拟内存的理解不够清晰,于是特意为这位同事挑选了这个主题(笑)。之前,我对操作系统的概念有一些了解,但毕业后我对自己大学四年的计算机专业的荒废感到有些懊悔。因此,在工作之余,我抽出时间观看了哈尔滨工业大学在网易云课堂上的操作系统公开课,还阅读了一本讲解操作系统概念较浅的书籍《Linux内核设计与实现》。此外,去年我使用C语言编写了一个简单的服务器,深入了解了更多
- LINUX . 系统教程 1028 2024-02-05 12:42:14
-
- Linux是实时系统还是分时操作系统?
- 我们经常分享的µC/OS、FreeRTOS、RT-Thread、ThreadX都是实时操作系统(RTOS),那么有读者可能会问:分时操作系统是什么?Linux算实时操作系统吗?实时操作系统(RTOS)RTOS,全称为RealTimeOperatingSystem,也就是我们所说的实时操作系统。1.实时操作系统定义实时操作系统(RTOS)是一种能够在外部事件或数据产生时,迅速接受并处理的系统,其处理结果能够在规定的时间内控制生产过程或对处理系统做出快速响应,并协调所有实时任务的运行。因此,实时操作
- LINUX . 系统教程 2012 2024-02-05 12:40:22
-
- BlendOS 3 正式发布,不可变 Linux 无缝运行 Android 应用
- blendOS开发者和UbuntuUnity维护者RudraSaraswat今天宣布,基于ArchLinux的不可变Linux发行版blendOS3已正式发布,具有一些独特的功能。blendOS3通过Distrobox/Podman增加了对其他9个发行版的支持,包括ArchLinux、AlmaLinuxOS、CrystalLinux、DebianGNU/Linux、FedoraLinux、KaliLinux、NeurodebianBookworm、RockyLinux和UbuntuLinux,从
- LINUX . 系统教程 1243 2024-02-05 12:33:02
-
- 利用vscode远程调试Linux内核
- 前言上一遍文章介绍了利用QEMU+GDB调试Linux内核。但是,有时候直接利用GDB调试查看代码还不是很方便,所以,在这么重要的场合,怎么能少的了vscode这个神器呢。本篇文章介绍如何使用vscode远程调试内核。本文环境:windows10vscodeubuntu20.04我个人使用的是腾讯云服务器,所以就省去了安装虚拟机的过程。直接从vscode配置开始。vscode插件安装remote-ssh在插件库中找到Remote-SSH插件并且安装。安装完成后右边工具栏会多出一个功能按F1呼出对
- LINUX . 系统教程 3335 2024-02-05 12:30:12
-
- Linux 上最好的 8 款 Markdown 编辑器
- 你是否正在寻找一款易于使用的LinuxPC上的Markdown编辑器?那么我们为你推荐一些最佳选择。Markdown以其简单性和可读性而闻名,已成为Linux用户创建干净和结构良好文档的首选标记语言。但要充分利用Markdown的潜力,您需要一个合适的编辑器。无论您是初学者寻找直观的界面,还是经验丰富的专业人士寻求高级定制选项,下面的这些Markdown编辑器都值得您探索,以找到适合您需求的最佳选择。1、TyporaTypora是最用户友好的Markdown编辑器之一,以其实时预览功能而受到赞誉
- LINUX . 系统教程 3436 2024-02-05 12:25:18
PHP讨论组
组员:3305人话题:1500
PHP一种被广泛应用的开放源代码的多用途脚本语言,和其他技术相比,php本身开源免费; 可以将程序嵌入于HTML中去执行, 执行效率比完全生成htmL标记的CGI要高许多,它运行在服务器端,消耗的系统资源相当少,具有跨平台强、效率高的特性,而且php支持几乎所有流行的数据库以及操作系统,最重要的是

