首页
技术博客
PHP教程
数据库技术
前端开发
HTML5
Nginx
php论坛
新用户注册
|
会员登录
PHP教程
技术博客
编程问答
PNG素材
编程语言
前端技术
Android
PHP教程
HTML5教程
数据库
Linux技术
Nginx技术
PHP安全
WebSerer
职场攻略
JavaScript
开放平台
业界资讯
大话程序猿
登录
极速注册
取消
热门标签 | HotTags
交换机
log4j
debian
shell
zsh
apache
ftp
devops
负载均衡
tengine
4层
service
jenkins
容器
vagrant
fabric
运维
curl
服务器
dns
crontab
port
sftp
kubectl
centos7
colors
cron
nginx
docker
server
ubuntu
grep
syslog
grafana
linux
stdout
k8s
unix
压力测试
touch
7层
ssh
centos
路由器
sudo
awk
当前位置:
开发笔记
>
运维
> 正文
你的系统需不需要linux?
作者:2102球地转反 | 来源:互联网 | 2017-11-05 15:19
你的系统需不需要linux?--Linux通用技术-Linux技术与应用信息,下面是详情阅读。
Allen's World
我曾在几种产品上工作过,他们使用不同的处理器,有80186,z80(够古老吧)和arm7。无一例外都用某种RTOS。除了arm7那个产品上面用的ecos比较大一点外,另外两个用的RTOS都是很小的系统,他们只提供了为实现多任务处理的最基本的内核,他们提供如:任务创建,信号量,消息队列,邮箱,事件标志等等,在这之上我们自己做了一个很小的文件系统,然后就是自己的设备的驱动。
在很多嵌入式书籍中都提到过用RTOS的好处,当你的系统复杂度达到一定的程度时,还用前后台系统会让你的工作变得十分复杂,我是这样理解的。
我有一个比较有趣的经历,我曾经工作过的一个系统在启动之前要做一个分支,有点像一般bootloader的strap工作,比较一下flash中的某个值,然后决定启动哪一个应用。但是他们是这么做的:他用了OS!然后在os启动后的程序中写了几句话的分支程序。我用了几行汇编代码做了同样的事情。为什么这个开发人员这么做?只是因为这么做对他来说没有障碍,他的其他系统都是这么写的,他不用写arm汇编代码,他是个pure C程序员,呵呵!
由于RTOS不包含硬件驱动,应用系统直接和驱动打交道。Linux是一个怎样的系统呢?我没有深入研究过uclinux这些嵌入式linux,(RTOS我是这样理解的:一个基于优先级的抢占式调度的系统,一般不会用时间片调度)我只能就我手头这个开发板用的2.6.11的linux核来理解,他会把驱动做进内核,提供统一的和文件操作一样的接口。
我想linux最大的好处在于你可以使用许多现成的设备驱动资源,我想包括uclinux等也应该会有同样的免费资源。
同时我工作过的系统都没有mmu和内存保护等功能,也不区分内核空间和用户空间。我的理解是:如果我的系统不需要运行第三方软件,软件规模也是在比较小的范围,功能单一,我为什么需要内存保护和复杂的mmu呢。但是像手机或者pmp这些设备,他们越来越像一个pc,这样的系统mmu和内存保护就有必要了。想想以前为了腾出几个字节的空间都要想破脑袋,而我手头的开发板有128M的ram,真的是幸福呀。
关于linux的理解是我自己在刚开始看了一点资料后的粗浅理解,随着我的研究的深入,我想我在之后会越来越透澈。今天先写这些,明天继续写我的linux学习笔记。
程序员
linux
写下你的评论吧 !
吐个槽吧,看都看了
会员登录
|
用户注册
推荐阅读
linux
汇编语言:编程世界的始祖,连C语言都敬畏三分!
当C语言还在萌芽阶段时,它首次接触到了汇编语言,并对其简洁性感到震惊。尽管汇编语言的指令极其简单,但它却是所有现代编程语言的基础,其重要性不言而喻。 ...
[详细]
蜡笔小新 2024-11-20 13:33:02
运维
Python在大数据和网络爬虫领域的应用前景
随着技术的发展,Python因其高效性和灵活性,在多个领域得到了广泛应用,特别是在大数据处理和网络爬虫开发方面。本文将探讨学习Python是否能够胜任大数据和网络爬虫工程师的工作,并分析其职业前景。 ...
[详细]
蜡笔小新 2024-11-20 16:02:31
运维
不同的编程语言是如何读写数据的
每种编程语言都有其独特的完成任务的方式,这也说明了为什么有这么多语言可供选择。在JimHall的《不同的编程语言如何完成相同的事情》文章中,他演示了13种不同的语言如何使用不同的语 ...
[详细]
蜡笔小新 2024-11-20 11:24:13
运维
Linux基本功八:输入输出重定向及管道
1、什么是过滤器管道使用竖线(|)将两个命令隔开,竖线左边命令的输出就会作为竖线右边命令的输入。连续使用竖线表示第一个命令的输出会作为第二个命令的输入,第二个命令的输出又会作为第三个命令的输入, ...
[详细]
蜡笔小新 2024-11-19 21:18:53
运维
Linux中利用cd命令别名快速切换工作目录
通过设置Linux中的cd命令别名,用户能够更加高效地在复杂的目录结构中进行工作目录的切换。本文介绍了几种实用的方法,帮助减少重复输入路径的工作量。 ...
[详细]
蜡笔小新 2024-11-20 16:44:00
服务器
探究64位Linux系统下32位程序的兼容性问题——以OpenVPN为例
本文通过分析一个具体的案例,探讨了64位Linux系统对32位应用程序的兼容性问题。案例涉及OpenVPN客户端在64位系统上的异常行为,通过逐步排查和代码测试,最终定位到了与TUN/TAP设备相关的系统调用兼容性问题。 ...
[详细]
蜡笔小新 2024-11-20 16:34:58
服务器
将图像平移到画布中心python_python – Tkinter画布缩放移动/平移
高级缩放示例.就像谷歌地图一样.它仅缩放图块,但不缩放整个图像.因此,缩放的瓷砖占据了恒定的记忆,并且不会为大型缩放图像调整大小的图像.对于简化的缩放示例lookhere.在Win ...
[详细]
蜡笔小新 2024-11-20 15:47:04
port
linux网络子系统分析(二)—— 协议栈分层框架的建立
目录一、综述二、INET的初始化2.1INET接口注册2.2抽象实体的建立2.3代码细节分析2.3.1socket参数三、其他协议3.1PF_PACKET3.2P ...
[详细]
蜡笔小新 2024-11-20 15:21:14
server
ARM平台下构建SSH服务端并实现远程访问
本文详细介绍了如何在ARM架构的目标设备上部署SSH服务端,包括必要的软件包下载、交叉编译过程以及最终的服务配置与测试。适合嵌入式开发人员和系统集成工程师参考。 ...
[详细]
蜡笔小新 2024-11-20 14:13:38
server
Windows环境下Apache频繁崩溃的解决方案
本文探讨了在Windows系统中运行Apache服务器时频繁出现崩溃的问题,并提供了多种可能的解决方案和建议。错误日志显示多个子进程因达到最大请求限制而退出。 ...
[详细]
蜡笔小新 2024-11-20 13:07:27
debian
Linux核心概念与发行版概览
本文介绍了Linux操作系统的核心组成部分——内核及其版本分类,以及市面上常见的几种Linux发行版,旨在为初学者提供一个清晰的学习路径。 ...
[详细]
蜡笔小新 2024-11-20 10:09:16
debian
Linux 内核与用户空间交互机制
本文探讨了Linux操作系统中内核与用户空间应用层之间的交互方式,重点介绍了ioctl接口的应用及通过sysfs文件系统实现的数据交换。 ...
[详细]
蜡笔小新 2024-11-20 00:43:10
服务器
PHP面试题精选及答案解析
本文精选了新浪PHP笔试题及最新的PHP面试题,并提供了详细的答案解析,帮助求职者更好地准备PHP相关的面试。 ...
[详细]
蜡笔小新 2024-11-19 20:00:19
服务器
如何在Mozilla Firefox中调整GIF动画的循环次数
本文介绍了如何通过调整Mozilla Firefox的高级设置来控制GIF动画的播放次数,帮助用户根据个人喜好自定义浏览体验。 ...
[详细]
蜡笔小新 2024-11-19 19:36:54
shell
【小白学习C++ 教程】二十三、如何安装和使用 C++ 标准库
【小白学习C++ 教程】二十三、如何安装和使用 C++ 标准库 ...
[详细]
蜡笔小新 2024-11-19 19:30:06
2102球地转反
这个家伙很懒,什么也没留下!
Tags | 热门标签
交换机
log4j
debian
shell
zsh
apache
ftp
devops
负载均衡
tengine
4层
service
jenkins
容器
vagrant
fabric
运维
curl
服务器
dns
crontab
port
sftp
kubectl
centos7
colors
cron
nginx
docker
server
RankList | 热门文章
1
所有联动_Excel表格制作一级、二级联动、三级联动下拉菜单表格选项
2
MySQL先删除再创建表但仍提示表存在的解决办法
3
里面怎么缓存图片_华为手机不明图片是从哪来的?不关闭这些设置,内存再大也不管用...
4
audacity怎么消除人声?audacity消除人声教程
5
office2013 win10版本激活
6
桌面虚拟化(七):画龙点睛的用户配置虚拟化
7
专门讨论共享软件的论坛(回复有分)
8
Excel使用VLOOKUP 函数将两组数据做差异对比
9
告诉大家如何做免费域名
10
“阿中哥”打call新方式?朋友圈疯狂@微信官方真的能换头像吗?
11
扶摇而上,融入千行百业,鲲鹏时代来临
12
Live Source Address 2019最新的电视广播包_【heronuke】最新Silhouette 2020影视后期遮罩跟踪抠像软件发布...
13
es6在项目中的应用
14
南昌大学《计算机操作系统》期末考试试卷真题4(含答案)
15
win8系统桌面程序图标变成白色怎么办
PHP1.CN | 中国最专业的PHP中文社区 |
DevBox开发工具箱
|
json解析格式化
|
PHP资讯
|
PHP教程
|
数据库技术
|
服务器技术
|
前端开发技术
|
PHP框架
|
开发工具
|
在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved |
京公网安备 11010802041100号
|
京ICP备19059560号-4
| PHP1.CN 第一PHP社区 版权所有