-
Linux可运行软件位置和环境变量
在Linux中运行软件就是一行命令的事,但是这些运行的软件具体在哪呢? 环境变量任何一个软件都可以将其文件夹放到环境变量中,就可以使用命令唤起这个软件。 使用包管理器安装的软件会被默认安装到**/usr/bin**的位置中。 而自己编译的软件要看软件的编译脚本安装到什么位置,一般是**/usr/local/bin**中。 上面两个文件夹都在环... -
6.S081课程实验
Lab1:环境搭建这里根据官方教程并不能够有预想的效果,所以就尝试理解原理并逐步安装所需要的工具。撰写本文的时间是2024/12/5,所有的软件版本和github仓库都以目前的时间为准。 目前使用的环境是 Windows11 24H2 WSL2 Ubuntu 22.04LTS 在WSL中进行环境的搭建。 安装riscv-gnu-toolchain实验使用的xv6操作系... -
6.S081操作系统笔记
一、操作系统简介1.1 操作系统的目标 Abstract 将硬件和低层次的应用抽象出来便于管理和使用 Multplex 多任务 Isolation 多任务的隔离,每个任务之间互不干扰 Sharing 任务之间进行数据的共享 Security 保护不应该被应用或者其他用户共享的数据 Performance 充分利用硬件的性能 1.2 操作系统的结构操作系统是一个覆盖在所有的硬件资源上的软件。... -
ELF可执行文件的结构详解
ELF(Executable Linkable Format)是一种Linux下使用的可执行文件,在嵌入式平台上也可能会使用类似结构的文件比如arm-gcc会生成AXF文件。了解ELF文件的结构,有助于深入理解加载,编译和链接等等过程,特别是在嵌入式平台上的这样的过程。
-
GCC和GDB命令使用详解
在linux下可能会使用GCC编译代码然后使用GDB进行调整。接下来对GCC和GDB的命令进行学习,以及如何使用GDB进行程序的调试。
-
VSCode调试C语言程序
在研究一段算法时,看不懂代码如何运行的,遂尝试搭建一个简单的调试环境,单步调试观察程序运行情况和变量改变情况。
-
C语言指针退化问题
数组指针考虑以下的代码。 12345678#include<stdio.h>int main(){ char a[] = {'h', 'e', 'l', 'l', 'o','\n'}; printf("%d\n...