搜索
bottom↓
回复: 8

什么是linux?

[复制链接]

出0入0汤圆

发表于 2012-2-8 13:03:15 | 显示全部楼层 |阅读模式
1 什么是linux?可以做服务器操作系统,可以做pc操作系统,可以做嵌入试操作系统,这个怎么区分?有什么不同?一个pc的系统,要怎栽掉不必要的东西才可以做成一个嵌入式的操作系统?
2 做嵌入式的时候这个系统具体是怎么运作的?比如我们有网络传输,有串口通信,有按键,有LCD显示。这些操作是怎么传到linux内部的?linux内部又是怎么处理这些信息?是不是linux把内核和外部操作分开的?只预留了一些接口之类的?比如说多线程,如上所述每一个任务分配一个线程,按某个机制来呼醒进而处理?
3 嵌入式系统和普通的单片机软件有多大不同?就像我们的普通手机和智能手机的区别?单任务和多任务的区别?
4 如果只懂得gcc写一个helloworld.c,和嵌入式的距离还有多远?

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2012-2-8 13:15:09 | 显示全部楼层
1. 选择不同的配置,自然就不同了,现在已经不像当年要手工裁剪代码,找个差不多的板子配置改改就好了
2. 你要好好看看操作系统的书,驱动就是为了把操作系统核心和硬件相关部分分开的。至于应用程序线程等等属于应用部分,不同平台差别不大
3. 非常大,非常大,建议先学习操作系统的基础知识
4. 呃,不是一般的远

出0入0汤圆

发表于 2012-2-8 13:48:14 | 显示全部楼层
顶。

出0入0汤圆

发表于 2012-2-9 08:05:36 | 显示全部楼层
mark

出0入4汤圆

发表于 2012-2-9 08:21:34 | 显示全部楼层
linux = 你牛死

出0入0汤圆

发表于 2012-2-16 20:30:40 | 显示全部楼层
能够真正掌握linux的应该很少,不过人的潜能是无限的,一起加油吧

出0入0汤圆

发表于 2012-2-20 10:03:37 | 显示全部楼层
我也不懂

出0入0汤圆

发表于 2012-2-26 11:08:37 | 显示全部楼层
做linux嵌入式,首先得学会怎么用linux,包括系统管理,需要学会一些脚本语言:shell,pyhon,perl等;然后可以做应用层方向的,对底层需求不多,好像做驱动的一般都是电子专业的,即知道硬件也懂得编程;应用过后该是内核、驱动编程了吧。

出0入0汤圆

发表于 2012-3-26 01:37:18 | 显示全部楼层
向2楼致敬。

应用程序和底层还是有区别的嘛。

偏向于平台的就学习Linux驱动开发,而学习应用程序开发话,和windows的流程上差不多。
就像helloworld一样,建个文件helloworld.c
#include <stdio.h>
int main(int argc, char *argv[])
{
    printf("....");
    return 0;
}
写个makefile:
OBJS=helloworld
CC=gcc
all:
$(CC) helloworld.c -o $(OBJS)

.PHONY:
clean:
rm -rf $(OBJS)
然后make一下就可以执行二进制文件helloworld了。

如果是做驱动,也可以写个helloworld.c模块试试:
#include <linux/init.h>
#include <linux/module.h>
MODULE_LICENSE("GPL");
static int hello_init()
{
    printk(KERN_ALERT "Hello, World!\n");
    return 0;
}
static void hello_exit()
{
    printk(KERN_ALERT "Goodbye, World!\n");
}
module_init(hello_init);
module_exit(hello_exit);
在建一个makefile:
obj-m := helloworld.o
kerneldir=/your/kernel/path
PWD=$(shell pwd)
all:
$(MAKE) -C $(kerneldir) M=$(PWD) modules
clean:
rm -rf helloworld

我觉得,如果楼主想开发一个能够接受网络包的程序,那么需要了解linux环境下的网络编程接口。
它和开发物理网卡驱动不是同一个东西。
就好比shell用的很溜,对于linux环境很熟悉。但是shell不用来开发内核,但是在linux下写程序,尤其是文本界面的时候,熟练应用shell又是推动作用吧。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-20 18:16

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表