Jim Hall 发布的文章

只需掌握一点 C 语言的知识,你就可以做很多事情。

 title=

我精通几种编程语言,但我最喜欢的是 C 语言。C 语言开发于 20 世纪 70 年代,作为一种系统编程语言,在 2021 年仍然是最受欢迎的编程语言之一。如果你想探索 C 语言的几个特点,可以从去年的这些热门文章开始:

在 C 语言中使用 getopt 进行短选项解析

如果你的程序每次运行时都能对用户作出反应,你就可以使它变得更加灵活。让你的用户告诉你的程序使用什么文件或如何以不同的方式做事情。为此,你需要读取命令行。这篇文章 告诉你如何使用 argv 直接读取命令行,并使用 getopt 读取短命令行选项。

在 Linux 中用 ncurses 定位屏幕上的文本

大多数 Linux 工具只是从屏幕的底部滚动文本。但如果你想在屏幕上定位文本,比如游戏或数据显示,该怎么办?这就是 ncurses 的作用。

用 DOS conio 开始编程

C 语言并不只适用于 Linux。你可以在许多操作系统上找到 C,包括 DOS。许多 C 程序员控制控制台输入和输出的标准方法是使用 conio 库。学习如何 使用 conio` 来更新 DOS 程序的控制台,包括文本颜色和文本窗口。

使用位域和掩码编写国际象棋游戏

在 C 语言程序中关联信息的标准方法是使用一个结合了两个或多个相关字段的结构体。例如,你可以用一个结构体来跟踪棋盘上的棋子。但是有一种更直接的方法来跟踪同样的信息,同时使用更少的数据和内存。使用 二进制位域和掩码,你可以存储一个单一的值来识别每个方格中的棋子和颜色。

C 语言编程中的 5 个常见错误以及如何修复它们

即使是最好的程序员也会产生编程错误。根据你的程序所做的事情,这些 bug 可能会引入安全漏洞,导致程序崩溃,或产生意外的行为。但是,通过一点额外的代码,你可以避免最常见和最严重的 C 语言编程错误。这里有 五个可能破坏你的应用的 bug 以及你如何避免它们

只需一点 C 语言知识,你就可以做很多事情。探索新的方法,为你的下一个 C 语言编程项目增加功能。


via: https://opensource.com/article/22/1/c-programming

作者:Jim Hall 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

这些文章显示了开源作为工具、平台或集成点在商业中的力量。

 title=

今年,我们刊登了几篇关注商业中的开源的好文章。这些文章展示了开源作为工具、平台或集成点在商业中的力量。让我们回顾一下 2021 年的一些顶级开源商业故事。

《我最喜欢的开源项目管理工具》

如果你在办公环境中管理过项目,你很可能使用微软 Project 来跟踪任务和分配。然而,开源社区已经创造了许多跟踪项目的选项。对于你的 项目管理需求Frank Bergmann 写了关于使用 Redmine、project-open、ProjectLibre、GanttProject、TaskJuggler 和 ProjeQtOr。

《使用 Apache Superset 进行开源商业智能报告》

通过商业智能,你可以通过对数据进行分类、安排结果和显示上下文信息来更好地了解你的信息。对于任何想要做出“数据驱动”决策的组织来说,商业智能(BI)是一项关键技术。Maxime Beauchemin 的文章讨论了 Apache Superset,以及它如何成熟地成为一个领先的开源 BI 解决方案。

《6 个用于餐馆和零售商的 WordPress 插件》

这场大流行病可能永久性地改变了许多人喜欢做生意的方式。餐馆和其他当地的零售机构不能再像以前那样依赖上门交易了。网上订购食品和其他物品已经成为一种常态和期望。当大流行结束后,消费者不太可能背弃电子商务的便利。Don Watkins 写了 六个开源插件,帮助你创建一个 WordPress 网站,满足你的客户对网上购物、路边取货和送货的偏好。它还可以建立你的品牌和你的客户群。

《试试 Chatwoot,一个开源的客户关系平台》

在任何有面向客户的业务中,保持与客户的互动是至关重要的。我们最后一次接触这个客户是什么时候,或者他们最后一次接触我们是什么时候?我们的组织中谁做了回应?什么服务水平协议制约着这种关系?这些和其他问题最好在客户关系管理系统(CRM)中进行管理。Nitish Tiwari 介绍了 Chatwoot,一个用 Ruby 和 Vue.js 构建的开源客户关系平台。Chatwoot 是从零开始写的,目的是让客户关系团队建立端到端的票据管理和支持平台。本文将介绍 Chatwoot 的架构、安装和主要功能。

《试试 Dolibarr,一个开源的客户关系管理平台》

无论你是经营零售店、餐厅、酒吧、超市、健身房还是其他业务,你都需要一个可靠的方式来与你的客户保持联系。毕竟,他们是客户,因为他们喜欢你做的事情,如果他们与你分享了他们的联系信息,他们想听到更多关于你所提供的东西。Pradeep Vijayakumar 介绍了 Dolibarr 项目,一个开源的企业资源规划(ERP)和客户关系管理(CRM)软件。Dolibarr 提供了一整套 ERP 功能,包括销售点(POS)、发票、存货和库存管理、销售订单、采购订单和人力资源管理。

《微软 Exchange 的一个开源替代品》

多年来,微软 Exchange 作为群件环境的必然选择。然而,在 2020 年末,一个奥地利的开源软件开发商推出了 grommunio,它是一个群件服务器和客户端,其外观和感觉为 Exchange 和 Outlook 用户所熟悉。Markus Feilner 写了关于 grommunio 如何在企业中取代 Exchange,成为群件的一个强大而功能齐全的选择。

《用这个开源工具简化发票的指南》

许多 IT 项目在开发过程中会延迟、超出预算,并出现巨大的变化。这些问题使开具发票成为 IT 领域最费力的活动之一。Frank Bergmann 写了一篇关于开源项目如何 简化开票过程 的文章。如果你决定成为自雇人士或成立一个创业公司,Frank 的文章也可以作为处理财务工作的指南。

开源是好生意

开源软件不仅仅是为开发者服务的。企业也可以利用开源软件的力量。事实上,开源是许多商业领域的一个主要驱动力。你今天使用的工具可能本身就是开源软件,或者使用开源作为堆栈的一部分。


via: https://opensource.com/article/21/12/open-source-business-tools

作者:Jim Hall 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

这组文章展示了企业如何与开源软件连接。

 title=

开源软件不仅仅创造了专有软件的替代品。在商业方面,开源已经成为一个“力量的倍增器”来改变组织的经营方式。同时,越来越多的公司开始采用更多的开源方法,甚至在管理团队和流程方面。

在过去的一年里,我们发表了许多优秀的文章,展示了企业如何与开源软件相联系。以下是一些阅读量最大的文章:

《开源给你带来竞争优势的 4 种方式》

为了在当今快节奏的世界中取得成功,企业必须对数字解决方案进行明智的投资,使他们能够更快地行动并提高运营的灵活性。这正是越来越多的各种规模和各种行业的组织拥抱开源解决方案的原因。根据麦肯锡的一份报告,开源的采用是表现优异的组织的最大差异化因素。Jason Blais 写了采用开源技术可以帮助组织推动竞争优势和体验更好的业务成果的 四个原因

《为什么 Crate.io 回归其纯粹的开源根源》

开源技术提供企业级的可扩展性、性能、安全性和可靠性。信任就在那里,而且是当之无愧的。但除了顽固的开源信徒之外,较少被人称道的是日常社区贡献的内部运作,在原子级别建立了这些宏观利益。对于那些提供开源技术的人来说,社区不断的用户驱动的测试和加固将这些技术锻造成强大和成熟的解决方案。Crate.io 的联合创始人 Bernd Dorn 写道,该组织从“开放核心” 转变 为采用 Apache 2.0 许可的纯开源。

《为什么非营利组织选择开源软件》

随着科技和数据安全意识的提高,开源软件比以往任何时候都更成为各阶层组织的首选。非营利组织在财务方面尤其脆弱,同时又要处理重要的社会和环境问题。Michael Korotaev 以 Nextcloud 和 ONLYOFFICE为 例,写了关于在非营利组织中 采用开源协作技术 的文章。

《管理开源产品路线图》

客户,以及与他们交谈的销售和营销团队,都喜欢一个路线图。它让他们了解什么是现实的,什么是不现实的。路线图也是一个产品的核心。Scott McCarty 写了关于 管理开源产品路线图 的文章,以及为什么专有产品的路线图与建立在开源供应链上的产品没有什么不同。产品经理与客户交谈,对他们的需求进行排序,制定路线图,然后找出如何通过建设、购买和合作来提供能力。

《将开源产品推向市场》

产品营销和计划中的信息传递的作用对于一个成功的发布至关重要。Scott McCarty 继续他关于开源供应链中的产品管理的系列文章,讨论了 开源和产品营销的交叉点


via: https://opensource.com/article/21/12/open-source-software-business

作者:Jim Hall 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

如果你已经熟悉了 Linux 命令行,尝试这些命令有助于轻松地进入 FreeDOS 。

 title=

如果你已经尝试过 FreeDOS ,你可能已经被命令行所吓倒。DOS 命令可能稍微不同于你所使用的 Linux 命令行,因此,使用它的命令行上需要学习一些新的命令。

但是对于 Linux 用户来说,它不是一种 “全新的” 体验。在 FreeDOS 中,除了 DOS 命令之外,我们还包含一些已经熟悉的标准的 Unix 命令。因此,如果你已经熟悉了 Linux 命令行,尝试这些命令有助于轻松地进入 FreeDOS :

在四周走走

在 FreeDOS 文件系统中使用 cd 命令来 更改目录 。在 FreeDOS 上的用法在 Linux 上的用法基本相同。要更改到一个名称为 apps 的子目录,输入 cd apps 。要回到先前的目录,输入 cd ..

在 FreeDOS 上导航浏览目录和路径是仅有的不同点,目录分隔符是 \(“反斜杠”)而不是你在 Linux 上使用的 / (“正斜杠”)。例如,让我们假设你在 \devel 目录之中,你想移动到 \fdos 目录。这两个目录相对于 目录而言是处于相同的 “层次” 之中的。因此,你可以输入 cd ..\fdos 来 “向后返回” 一个目录层次(使用 ..) ,然后再 “转到” fdos 目录。

要更改到一个新的目录,你可以使用先前提到的反斜杠来替换需要给出的完整的路径。如果你已经深入了另外一个路径之中,并且只是像立即切换到新的位置,那么这会是非常方便的。例如,要更改到 \temp 目录,你可以输入 cd \temp

C:\>cd apps
C:\APPS>cd ..
C:\>cd devel
C:\DEVEL>cd ..\fdos
C:\FDOS>cd \temp
C:\TEMP>_

在 FreeDOS 中,像大多数的 DOS 系统一样,你可以在DOS 提示符中看到你的当前路径。在 Linux 上,你的提示符可能类似于 $ 。在 FreeDOS 上,提示符会列出当前的驱动器及其当前的路径,接下来使用 > 作为提示符(看做 Linux 上的 $)。

列出和显示文件

在 Linux 上,列出当前目录中文件的标准命令是 ls 命令。在 FreeDOS ,它是一个不同的命令: dir 。但是你可以创建一个 别名 来获取一种与 ls 类似的行为。

要为另外一个命令创建一个别名,使用内置的 alias 命令。例如,使用此命令来为 ls 定义一个别名,这个别名将显示一个目录列表,与在 Linux 上使用 ls 类似:

C:\>alias ls=dir /one /w /b /l
C:\>ls
[apps]    command.com   [devel]  fdauto.bat   fdconfig.sys
[fdos]    kernel.sys    [src]    [temp]
C:\>

在 FreeDOS 上的命令选项格式与 Linux 稍微不同。在 Linux 上, 你使用一个连字符号(-)表示选项。但是在 FreeDOS 上,你使用一个正斜杠来表示选项。上面的 alias 命令使用斜杆杠字符 — 它们是 dir 的选项。/one 可选择项告诉 dir 以某种方式排序(o):先按名称(n)再按扩展名(e)来排序一些文件和目录。/w 使用一个 “宽” 目录列表,/b 使用一种不带有 dir 通常提供的其它信息的 “裸” 显示,/l 指示 dir 以小写字母的形式显示文件和目录。

注意,针对于 FreeDOS 的 dir 命令的命令行选项与针对于 Linux 的 ls 命令的命令行选项截然不同,因此,你不能像你在 Linux 上一样精确地使用这个 ls 别名。例如,在 FreeDOS 上使用此别名输入 ls -l 将产生一条 “文件未找到” 的错误,因为底层的 FreeDOS 的 dir 命令不能找到一个名称为 -l 的文件。不过,对于基本的 “查看在我的系统上有哪些文件” 来说,这个 ls 别名已经足够帮助 Linux 用户开始使用 FreeDOS 了。

类似地,你可以为 FreeDOS 的 type 命令创建一个别名,来像 Linux 的 cat 命令一样工作。两个重新都会显示一个文本文件的内容。虽然 type 不支持你可能在 Linux 下使用的命令行选项,但是显示一单个文件的基本用法是相同的。

C:\FDOS>alias cat=type
C:\FDOS>cat version.fdi
PLATFORM=FreeDOS
VERSION=1.3-RC4
RELEASE=2021-04-30
C:\FDOS>

其它的类 Unix 命令

FreeDOS 包含一些精选的其它常见的类 Unix 命令,因此 Linux 用户将不会感觉到拘束。为在 FreeDOS 上使用这些 Linux 命令,你可能需要从 “FreeDOS Installer” - “My Package List Editor Software (FDIMPLES)” 软件包管理器来安装 “Unix Like Tools” 软件包。

 title=

(Jim Hall, CC-BY SA 4.0)

并不是所有的类 Unix 实用程序都能像在 Linux 上对应的实用程序一样 一致地 工作。这就是我们称其为 类 Unix 的原因。如果你将要使用一些深层次的命令行选项,你可能需要检查其兼容性,不过,对于典型的用法是没有问题的。开始在 FreeDOS 上使用这些类 Unix 命令:

cal 命令是标准的 Unix 的日历程序。例如,为显示当前月份的日历,只需要输入 cal 。为查看一个具体指定的月份,将月份和年份作为参数予以给定:

C:\>cal 6 1994

      June 1994    
Su Mo Tu We Th Fr Sa
          1  2  3  4
 5  6  7  8  9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30      

使用 du 命令来查看你的磁盘使用情况。这是 Linux 的 du 命令的简单版本,并且不支持路径以外的任何命令行选项。

C:\>du -s apps
usage: du (start path)
C:\>du apps
    158784 C:\APPS\FED
         0 C:\APPS
Total from C:\APPS is 158784
C:\>

head 命令显示一个文件的前几行。例如,这是一种确定一个文件是否包含正确数据的简单方法。

C:>head fdauto.bat
@ECHO OFF
set DOSDIR=C"\FDOS
set LANG=EN
set TZ=UTC
set PATH=%dosdir%\BIN
if exist %dosdir%\LINKS\NUL set PATH=%path%;%dosdir%\LINKS
set NLSPATH=%dosdir%\NLS
set HELPPATH=%dosdir%\HELP
set TEMP=%dosdir%\TEMP
set TMP=%TEMP%
C:\>

要查看一个完整的文件,使用 more 命令,在 FreeDOS 上的默认文件查看器。这将一次显示一屏的文件,然后在显示下一屏的信息前,打印一个按下一次按键的提示。more 命令是一个非常简单的文件查看器;在 Linux 上你可能已经使用过一个功能更全面的查看器,可以尝试一下 less 命令。less 命令提供 “向后” 滚动一个文件的能力,以防你错过一些东西。你还可以搜索具体指定的文本。

C:\>less fdauto.bat
@ECHO OFF
set DOSDIR=C"\FDOS
set LANG=EN
set TZ=UTC
set PATH=%dosdir%\BIN
if exist %dosdir%\LINKS\NUL set PATH=%path%;%dosdir%\LINKS
set NLSPATH=%dosdir%\NLS
set HELPPATH=%dosdir%\HELP
set TEMP=%dosdir%\TEMP
set TMP=%TEMP%
[...]

如果在你的程序路径变量(PATH)中有很多的目录,并且不确定某个程序是从哪里运行的,你可以使用 which 命令。这个命令将扫描程序路径变量,并且将打印出你正在查找的程序的完整的位置。

C:\>which less
less    C:\>FDOS\BIN\LESS.EXE
C:\>_

FreeDOS 1.3 RC4 包含其它的类 Unix 命令,你可能会在其它更特殊的情况下使用。这些命令包括:

  • bc:任意精度数字处理语言
  • sed:流编辑器
  • grepxgrep:使用正则表达式搜索一个文本文件
  • md5sum:生成一个文件的一个 MD5 签名
  • nro:简单排版,使用 nroff 宏
  • sleep:暂停系统几秒钟
  • tee:保存一个命令行流的副本
  • touch:修改一个文件的时间戳
  • trch:转换单个字符(像 Linux 的 tr 一样)
  • uptime:报告你 FreeDOS 系统已经运行多长的时间

在你控制下的 FreeDOS

FreeDOS ,像 Linux 和 BSD 一样,是开源的。不管你是想通过学习一种新的命令行交互方式来挑战你自己,还是想再去熟悉令人舒适的类 Unix 工具,FreeDOS 都是一款有趣的值得尝鲜的操作系统。尝试一下!


via: https://opensource.com/article/21/6/freedos-linux-users

作者:Jim Hall 选题:lujun9972 译者:robsean 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

学习如何使用 FDCONFIG.SYS 来配置 FreeDOS 。

 title=

FreeDOS 是主配置文件是在根目录中的名称为 FDCONFIG.SYS 的文件。这个文件包含一系列的行,每行都设置一个诸如 LASTDRIVE=ZFILES=40 的值。例如,在 FreeDOS 1.3 RC4 中的默认 FDCONFIG.SYS ,看起来像这样:

SET DOSDIR=C:\FDOS

!COUNTRY=001,858,C:\FDOS\BIN\COUNTRY.SYS
!LASTDRIVE=Z
!BUFFERS=20
!FILES=40
!MENUCOLOR=7,0

MENUDEFAULT=1,5
MENU 1 - Load FreeDOS with JEMMEX, no EMS (most UMBs), max RAM free
MENU 2 - Load FreeDOS with JEMM386 (Expanded Memory)
MENU 3 - Load FreeDOS low with some drivers (Safe Mode)
MENU 4 - Load FreeDOS without drivers (Emergency Mode)

12?DOS=HIGH
12?DOS=UMB
12?DOSDATA=UMB
1?DEVICE=C:\FDOS\BIN\JEMMEX.EXE NOEMS X=TEST I=TEST NOVME NOINVLPG
234?DEVICE=C:\FDOS\BIN\HIMEMX.EXE
2?DEVICE=C:\FDOS\BIN\JEMM386.EXE X=TEST I=TEST I=B000-B7FF NOVME NOINVLPG
34?SHELL=C:\FDOS\BIN\COMMAND.COM C:\FDOS\BIN /E:1024 /P=C:\FDAUTO.BAT
12?SHELLHIGH=C:\FDOS\BIN\COMMAND.COM C:\FDOS\BIN /E:1024 /P=C:\FDAUTO.BAT

但是,这些指令行都表示什么意思?为什么一些指令行有一个问号(?)或一个叹号(!),而其它的命令行却没有?

一个简单的配置

让我们从一个简单的配置开始,像这样,我们就可以看到我们的配置做了什么。做出这个非常简单的 FDCONFIG.SYS 文件:

LASTDRIVE=Z
BUFFERS=20
FILES=40
DEVICE=C:\FDOS\BIN\HIMEMX.EXE
SHELL=C:\FDOS\BIN\COMMAND.COM C:\FDOS\BIN /E:1024 /P=C:\FDAUTO.BAT

这个配置文件仅包含几个指令:

  1. LASTDRIVE=Z
  2. BUFFERS=20
  3. FILES=40
  4. DEVICE=C:\FDOS\BIN\HIMEMX.EXE
  5. SHELL=C:\FDOS\BIN\COMMAND.COM C:\FDOS\BIN /E:1024 /P=C:\FDAUTO.BAT

第一行指令告诉 FreeDOS 在存储器中保留多少驱动器字母。(DOS 使用字母来表示附属于系统的每个驱动器,LASTDRIVE=Z 表示预留从 AZ 的所有驱动器字母)。 LASTDRIVE 会影响系统可以识别的 逻辑驱动器 的数量。你可能没有任何的逻辑驱动器;FreeDOS 安装器不会默认设置这些逻辑驱动器。在任何情况下,在任何 FreeDOS 系统上设置 LASTDRIVE=Z 都是没有害处的。

BUFFERS 行设置文件缓冲区预留存储器。缓冲区 有助于加速某些需要存储空间的进程,例如复制文件。如果你为 BUFFERS 设置一个较大的值,那么 FreeDOS 将预留更多的存储器。同理反之。大多数的用户将会设置其为 BUFFERS=20BUFFERS=40 ,取决于他们在系统上读写文件的频率。

FILES 设置决定 DOS 允许你一次打开多少文件。如果你运行的一个应用程序需要一次打开很多文件,例如打开一个谱系数据库,你可能需要为 FILES 设置一个较大的值。对于大多数的用户来说,FILES=40 是一个合理的值。

DEVICE 是一个特殊的指令,用于加载 设备驱动器 。DOS 需要针对某些硬件或配置文件的设备驱动器。这行 DEVICE=C:\FDOS\BIN\HIMEMX.EXE 来加载 HimemX 设备驱动,这样,DOS 可以利用超出前 640 KB 的扩展存储器。

最后的指令行告诉 FreeDOS 的内核在哪里找到命令行 shell 。默认情况下,内核将从 COMMAND.COM 开始查找 shell ,但是你可以使用 SHELL 指令来更改它。在这个示例中, SHELL=C:\FDOS\BIN\COMMAND.COM 说明 shell 是 COMMAND.COM 程序,位于 C 驱动器上的 \FDOS\BIN 目录之中。

SHELL 结尾处的其它文件表示选项为 COMMAND.COM 的 shell 。FreeDOS 的 COMMAND.COM 支持一些启动选项来修改它的行为,包括:

  • C:\FDOS\BINCOMMAND.COM 程序的完整的路径
  • /E:1024:环境(E)大小,以字节为单位。/E:1024 告诉 COMMAND.COM 来预留 1024 字节,或者说是 1 KB ,来存储它的环境变量。
  • /P=C:\FDAUTO.BAT/P 选项表示 shell 是一个永久性的(P)shell ,因此用户不能通过输入 EXIT 来退出 shell(附加文本 =C:\FDAUTO.BAT 告诉 COMMAND.COM 在启动时执行 C:\FDAUTO.BAT 文件,而不再执行默认的 AUTOEXEC.BAT 文件)

通过这个简单的配置文件,你应该能够理解 FreeDOS 1.3 RC4 安装的 FDCONFIG.SYS 文件中的一些东西。

启动菜单

FreeDOS 支持一种有序的功能:在一个系统上使用多个配置文件,使用一个“启动菜单”来选择你想要的配置。FDCONFIG.SYS 文件包含一些定义菜单的行:

!MENUCOLOR=7,0

MENUDEFAULT=1,5
MENU 1 - Load FreeDOS with JEMMEX, no EMS (most UMBs), max RAM free
MENU 2 - Load FreeDOS with JEMM386 (Expanded Memory)
MENU 3 - Load FreeDOS low with some drivers (Safe Mode)
MENU 4 - Load FreeDOS without drivers (Emergency Mode)

MENUCOLOR 指令定义启动菜单的文本颜色和背景颜色。这些值通常在 0 到 7 的范围之内, 并代表这些颜色:

  • 0 黑色
  • 1 蓝色
  • 2 绿色
  • 3 品蓝
  • 4 红色
  • 5 品红
  • 6 棕色
  • 7 白色

因此,MENUCOLOR=7,0 的定义意味着显示一个黑色背景(0)白色文本(7)的菜单。如果你想使用一个蓝色背景白色文本,你可以将其定义为 MENUCOLOR=7,1

在行头部的叹号(!)意味着:不管你选择哪个菜单,这个指令都将会执行。

MENUDEFAULT=1,5 行告诉内核等待用户多长时间来选择启动菜单项,或者如果用户没有选择的话,使用那个默认菜单项。MENUDEFAULT=1,5 标示着系统将等待 5 秒钟;如果用户不在这段时间内尝试选择一个菜单的话,内核将选择启动菜单 “1” 。

 title=

在其后的 MENU 行至不同启动菜单配置的标签。它们是按顺序排列的,因此,菜单项目 “1” 是第一个,接下来的 “2” 是第二个,以此类推。

 title=

FDCONFIG.SYS 中的接下来的一行中,你将在一个问号(?)前看到一些数字。这标示“针对这几个数字的启动菜单项,使用这行命令”。例如,如果用户选择启动菜单项 “2”、“3” 或 “4” 的话,那么带有 234? 的这行命令才将加载 HimemX 设备驱动器。

234?DEVICE=C:\FDOS\BIN\HIMEMX.EXE

这里有很多方法来使用 FDCONFIG.SYS 以配置你的 FreeDOS 系统。我们在这里只介绍基本的东西,最重用的方法是定义你的 FreeDOS 内核设置。更多的信息,探索 FreeDOS 帮助系统(在命令行中输入 HELP)来学习如何使用 FreeDOS 的 FDCONFIG.SYS 选项:

  • SWITCHES:启动时处理过程行为
  • REM;:注释(在 FDCONFIG.SYS 中将被忽略)
  • MENUCOLOR:启动菜单文本颜色和背景颜色
  • MENUDEFAULT:启动菜单默认值
  • MENU:启动菜单选项
  • ECHOEECHO:显示信息
  • BREAK:设置打开或关闭扩展的 Ctrl+C 检查
  • BUFFERSBUFFERSHIGH:分配多少磁盘缓冲区
  • COUNTRY:设置国际化行为
  • DOS:告诉 FreeDOS 内核如何将其自身加载到存储器之中
  • DOSDATA:告诉 FreeDOS 加载内核到上位存储器之中
  • FCBS:设置文件控制块(FCB)的数量
  • KEYBUF:在存储器中重新指定键盘缓冲区
  • FILESFILESHIGH:一次可以打开多少个文件
  • LASTDRIVELASTDRIVEHIGH:设置可以使用的最后一个驱动器字母
  • NUMLOCK:设置打开或关闭键盘数字锁
  • SHELLSHELLHIGHCOMMAND:设置命令行 shell
  • STACKSSTACKSHIGH:添加堆栈以处理硬件中断
  • SWITCHAR:重新定义命令行选项开关字符
  • SCREEN:设置在屏幕上的行数
  • VERSION:设置向程序报告的 DOS 版本
  • IDLEHALT:激活节能功能,在某些系统上有用
  • DEVICEDEVICEHIGH:加载一个驱动程序到存储器之中
  • INSTALLINSTALLHIGH:加载一个 “存储器驻留”(TSR)程序
  • SET:设置一个 DOS 环境变量

以纯文本方式配置 FreeDOS

像 Linux 和 BSD 一样,FreeDOS 配置以纯文本的方式进行。不需要特殊指定的编辑工具,因此,深入研究,看看哪些选项最适合你。它很简单,但是功能很强大!


via: https://opensource.com/article/21/6/freedos-fdconfigsys

作者:Jim Hall 选题:lujun9972 译者:robsean 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

熟悉 FreeDOS 软件包管理器 FDIMPLES 。

在 Linux 上,你可能已经使用过 “软件包管理器” 来安装或移除软件包。例如,在 Debian Linux 上的默认软件包管理器是 deb 命令,在 Fedora Linux 上的默认软件包管理器是 dnf 命令。 但是你知道 FreeDOS 也有一个软件包管理器吗?

安装软件包

FreeDOS 1.3 RC4 发行版包含了很多极好的你可以使用的程序和应用程序。不过,我们不会默认安装其中的全部的程序 —— 我们不想过度地填充你的硬盘驱动器空间,尤其是在一个较老的系统上,可能仅有几百兆字节容量的硬盘驱动器。当你安装 FreeDOS 时,如果你选择 “Plain DOS system” 选项,你将发现你的 FreeDOS 系统是非常小的(大约 20 MB 大小)。

不过,要安装新的软件包很容易。在命令行中运行 FDIMPLES 程序。因为 DOS 是 不区分大小写 的,所以,你可以使用大写字母或小写字母来输入这个命令: fdimples 。(fdimplesFDIMPLESFDImples 等同)

fdimples

在 FreeDOS 1.3 RC4 上的 FDIMPLES 软件包管理器(运行在 QEMU 之中)(Jim Hall, CC-BY SA 4.0

FDIMPLES 是 "FreeDOS Installer - My Package List Editor Software" 的首字母缩略词,是一个交互式软件包管理器。FDIMPLES 读取安装介质来识别可以安装或移除的软件包。如果你看到一个不同的菜单,它显示 “Installed!” ,但是,不让你安装其它的软件的话,请检查你系统中是否有 FreeDOS 的 CD-ROM 的安装介质。在物理机器上,你将需要将 CD-ROM 插入 CD-ROM 驱动器;在诸如 QEMU 或 VirtualBox 之类的虚拟机器上,你需要将安装 FreeDOS 的 CD-ROM 的安装介质与虚拟机器关联在一起。

fdimples installed

如果你仅看到一条 “Installed!” 的信息,检查 CD-ROM 是否已经加载(Jim Hall, CC-BY SA 4.0

让我们假设你想安装一些可以让你听音乐文件或其它声音文件的软件。使用向上箭头和向下箭头按键来导航到菜单中的 声音工具 项。这是一个针对声音和音乐程序的 软件包组

fdimples sound

在 FDIMPLES 中突出显示声音软件包组(Jim Hall, CC-BY SA 4.0

要选择这个组中的所有软件包,在你的键盘上按下空格键。如果你决定安装这个组中的某个软件包,按下 Tab 按键来移动到 软件包列表 方框面板,接下来使用空格键来选择每个软件包。

fdimples sound select

通过按下空格键来选择一个组中的所有的软件包(Jim Hall, CC-BY SA 4.0

你可以继续选择你想要安装的其它的软件包或软件包组。当你选择好一切的东西后,使用 “Tab” 按键来高亮显示 “OK” 按键,并按下空格键按键。

fdimples sound select ok

当你准备好安装时,突出显示 “Ok” 按钮(Jim Hall, CC-BY SA 4.0

FDIMPLES 接下来会安装你所选择的所有的软件包。如果你仅选择几个小型的软件包,这可能只需要花费片刻的时间,或者,如果你要求安装很多大型的软件包,它可能会花费数分钟的时间。当 FDIMPLES 安装每个软件包时,FDIMPLES 会输出安装状态。在安装完后,FDIMPLES 退出到命令行之中,以便你可以回去继续工作。

fdimples sound install done

当 FDIMPLES 安装软件包时,FDIMPLES 会显示安装过程,并在完成安装后自动地退出(Jim Hall, CC-BY SA 4.0

移除软件包

如果你安装了一个软件包,但是后来发现你不想要它了怎么办?在 FDIMPLES 中移除软件包也同样容易。

就像安装软件包一样,启动 FDIMPLES ,使用箭头键导航到包含你想要移除的软件包的组。例如,如果我想卸载一些我先前安装的音乐播放器软件包,我将导航到 “Sound Tools” 软件包组。

fdimples sound select

导航到你想要移除的软件包组(Jim Hall, CC-BY SA 4.0

为一次移除整个软件包组,你可以在你想要移除的软件包组上按下空格键来取消选择它们。但是,在这里让我们假设我只是想移除几个我不需要的软件包,像音频 CD 播放器 “CDP”。(我没有任何的真实的音乐 CD 光盘)。为移除 CDP ,敲击 Tab 按键来移动到软件包列表方框面板,接下来使用空格键来取消选择 CDP 软件包。这会在该软件包上移除 “X” 标志。

fdimples unselect cdp

取消选择一个软件包来移除它(Jim Hall, CC-BY SA 4.0

你可以继续取消选择你想要移除的其它的软件包或软件包组。当你选择一切的东西后,使用 Tab 按键来突出显示 “OK” 按钮,并按下空格键按键。FDIMPLES 将移除你取消选择的软件包,然后自动地返回到命令行之中。

fdimples cdp removed

FDIMPLES 移除软件包,然后返回到命令行之中(Jim Hall, CC-BY SA 4.0

在 FreeDOS 中。我们包含很多的软件包,遍及各种各样的软件包组。使用 FDIMPLES 来安装你需要的软件。请随意实验!如果你决定你不想要保留一个软件包了,你可以移除它,并为其它的软件包来释放所占用的磁盘空间。


via: https://opensource.com/article/21/6/freedos-package-manager

作者:Jim Hall 选题:lujun9972 译者:robsean 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出