ubuntu 2440 ubuntu20.04下载教程

大家好,今天来为大家分享ubuntu 2440的一些知识点,和ubuntu20.04下载教程的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!

请问下我在虚拟机里能否装多个ubuntu操作系统

虚拟机软件可以创建多个“虚拟机”

每个虚拟机都是相互独立的,相当于一台真实的计算机。

你能在两台电脑各安装一个Ubuntu系统么?当然可以

所以虚拟机当然也可以

只要你的硬盘空间足够放下两个装有Ubuntu系统的虚拟机,那就不成问题

硬盘空间足够大,装一万个都可以~

学习Linux的步骤是怎样的

首先,要学Linux编程,你得会用Linux,也就是得在命令行环境下生存下来。什么叫生存下来呢?就是我现在给你一台主机,键盘,显示器啥的,然后给你一个服务器版的Linux系统的光盘或者其他什么安装盘,你去把这台主机用起来。什么叫用起来呢?你平常用Windows电脑干啥,你现在还用这台电脑干啥。新建文件啊,查看文件,编辑文件,保存文件,复制,移动,删除,打包,解压,联网,下载个什么东西啊等等基本操作你得会。还有软件怎么安装,不仅要熟悉apt-get和yum,还有给你源码的软件怎么安装你得会,另外要熟悉Linux下的文件系统,每个目录是干啥的,目录下的文件是干嘛的,插入一个U盘,如何挂载这个U盘,操作U盘下的文件你得会啊。这个看一本书就行了,《鸟哥的Linux私房菜-基础篇》,记得是基础篇,记得安装Linux系统自己操作一遍,还有一本是服务器篇,你既然是要学Linux编程开发,那就不用看服务器架设篇了。做完这一步,你可以开发了。

Linux下开发,两种基本语言,C和C++咯,至于其他人要说Python,Java,Ruby啥的不讨论,因为就讨论Linux下的开发,什么是Linux开发呢?就是利用Linux的API进行开发咯,首先你得会C语言或者C++语言啊,这个去看丹尼斯的《C程序设计语言》,注意是丹尼斯的,C++的就去看《Essential C++》或者《C++ Primer》,然后在Linux下的程序开发,Linux的API是遵循POSIX标准的,自行谷歌什么叫POSIX。Linux下程序开发几大块,文件操作,这个很重要,你要知道Linux下的一个思想叫一切皆文件,可见文件读写多重要了。I/O模型,五大I/O模型,阻塞,非阻塞,复用,信号驱动和异步I/O,环环相扣丝丝相连,概念和操作都要仔细琢磨,最重要的当属复用,就是select,poll和epoll,面试笔试就问这个东西,要知道他们的适用范围和优缺点。进程和线程,包括进程和线程的概念和区别,进程和线程的建立,同步,通信,互斥等等。网络编程,就是socket编程,Linux编程,这个学不好等于啥都没学,这个估计还得了解一下TCP/IP协议,编程方面主要是那几步,申请socket,bind,listen,accept几步,要熟悉种常见的服务器模型,进程池线程池方式的,多进程方式的,复用方式的,最重要的是复用方式的,这部分可以先只写服务器,测试直接用Telnet就好了,加快速度么。其余的就是数据库,这个东西不属于Linux,但是还得会,要不然啥都做不了,看那本《MySQL必知必会》,当然深入的话还得找本专业的书细细看。这个时候就可以真刀真枪的去干点有意思的事了,比如写个终端下的类似于QQ的软件啊,包括服务器和客户端啊,慢慢的增加并发数,比如可以同时支持五千人在线啊,文件传输啊等等。然后学学Qt,熟悉一下图形界面,可以把你的终端下的QQ完全改成图形界面下的。估计到这个时候,你差不多在Linux下进行像样的开发了吧。在这个过程的学习中,相信你已经学会Makefile的编写啊,编译啊,链接啊等等一些细枝末节的东西了,还得反思一下把零散的东西串一串,要系统化。

接下来就是继续深入了,Linux为什么这么多人用,好处在哪里,你得去稍微的看看内核源码啊,内核的进线程调度啊,我告诉你,Linux内核的一个链表都够你研究好几节课的。哦,这个时候,数据结构啥的又得翻出来加强一下了不是,计算机网络啥的也得看看,操作系统原理啥的也得看看呢不是,把这些东西放在这里是合适的,前面让你知其然,知道怎么编程怎么做,现在要知其所以然了不是。

在学习的过程中,要不断积累和了解最新的东西,最起码要知道个概念,比如分布式,大数据,云计算,机器学习,计算机视觉,JIT等等,形成知识链,这样不会导致你最后不知道学啥。有个建议,一定要学一下Python,一定要学一下Python,一定要学一下Python,重要的事情说三遍。它能极大的提高你的工作效率,也能和C/C++结合在一起用,很nice的语言。

最后推荐几本书(前面的包含在内):

《鸟哥的Linux私房菜基础篇》

《C程序设计语言》丹尼斯写的

《Linux C编程一站式学习》宋劲杉写的

《Eensstial C++》

《C++ Primer》

《Effective C++》

《Linux网络编程》宋劲彬写的

《Unix环境高级编程》

《Unix网络编程》两部

《Linux高级程序设计》华清远见的

《MySQL必知必会》

《数据库系统概念》

《大话数据结构》

《算法导论》

《Linux内核情景分析》

《深入理解Linux内核》

《深入理解计算机系统》

《现代操作系统》

《深入理解计算机网络》

《TCP/IP》的三卷经典书

如何配置编译在mini2440开发板上运行的linux内核

参考:

系统ubuntu12.04(非虚拟机下)

mini2440

CPU型号: S3C2440AL-40

Nanflash型号:K9F1G08

Norflash型号:SST39VF1601

LCD:统宝 240 x 320

$:普通账户

#:root账户

*当shell下输入路径时可使用tab键自动补全

(一)建立交叉编译环境

1.将mini2440光盘中的linux文件夹拷贝到/home/lianghuiyong并改名为Linux_share

(其中两个文档为我后面添加进去的)

2.Ctrl+Alt+T打开shell

3.$ su- root(切换root权限)

4.# cd/home/lianghuiyong/Linux_share

5.解压安装arm-linux-gcc编辑器

# tar xvzf arm-linux-gcc-4.4.3.tar.gz–C///注意:C后面有个空格

执行该命令,将把 arm-linux-gcc安装到/usr/loca/arm/4.4.3目录。这句来自mini2440用户手册,我发现其实是安装到/opt/FriendlyARM/toolchain/4.4.3目录

6.# vim/root/.bashrc

7.在最后一行添加:export PATH=$PATH:/opt/FriendlyARM/toolschain/4.4.3/bin//opt/FriendlyARM/toolschain/4.4.3/bin为arm-linux-gcc环境变量

:wq保存退出。

# source~/.bashrc

8.# sudo gedit/etc/environment

games后面添加标记部分

9.# arm-linux-gcc-v//gcc后面有空格

测试hello.c(这是在安装了第二部分的linux示例程序才有examples/hello目录)

# cd/opt/FriendlyARM/mini2440/examples/hello

# arm-linux-gcc-o hello hello.c

#./hello

(二)安装源代码及其他工具

创建工作目录(以下都为root环境下):

# mkdir-p/opt/FriendlyARM/mini2440

1>>解压安装linux内核源代码

# cd/opt/FriendlyARM/mini2440

# tar xvzf/home/lianghuiyong/Linux_share/linux-2.6.32.2-mini2440-20100106.tar.gz

2>>解压安装嵌入式图形系统qtopia源代码

# cd/opt/FriendlyARM/mini2440

# tar xvzf/home/lianghuiyong/Linux_share/x86-qtopia.tgz

# tar xvzf/home/lianghuiyong/Linux_share/arm-qtopia.tgz

3>>解压安装嵌入式图形系统 QtE-4.6.1源代码

# cd/opt/FriendlyARM/mini2440

# tar xvzf/home/lianghuiyong/Linux_share/arm-qte-4.6.3-20100802.tar.gz

4>>解压安装busybox源代码

# cd/opt/FriendlyARM/mini2440

# tar xvzf/home/lianghuiyong/Linux_share/busybox-1.13.3-mini2440.tgz

5>>解压安装 Linux示例程序

# cd/opt/FriendlyARM/mini2440

# tar xvzf/home/lianghuiyong/Linux_share/examples-20100108.tgz

6>>解压安装 vboot源代码

# cd/opt/FriendlyARM/mini2440

# tar xvzf/home/lianghuiyong/Linux_share/vboot-src-20100106.tar.gz

7>>解压安装 bootloader源代码

# cd/opt/FriendlyARM/mini2440

# tar xvzf/home/lianghuiyong/Linux_share/bootloader.tgz

8>>解压创建目标文件系统

# cd/opt/FriendlyARM/mini2440

#tar xvzf/home/lianghuiyong/Linux_share/rootfs_qtopia_qt4-20100816.tar.gz

9>>解压安装目标文件系统映象制作工具 mkyaffs2image

# cd/opt/FriendlyARM/mini2440

# tar xvzf/home/lianghuiyong/Linux_share/mkyaffs2image.tgz–C/

10>>解压安装LogoMaker

# cd/opt/FriendlyARM/mini2440

# tar xvzf/home/lianghuiyong/Linux_share/logomaker.tgz–C/

(三)定制linux内核及制作文件系统

config_mini2440_x35–适用于 Sony 3.5” LCD的内核配置文件

config_mini2440_t35–适用于统宝 3.5” LCD的内核配置文件

config_mini2440_l80–适用于 Sharp 8” LCD(或兼容)的内核配置文件

config_mini2440_n35–适用于 NEC3.5” LCD的内核配置文件

config_mini2440_h43–适用于 4.3” LCD的内核配置文件

config_mini2440_a70–适用于群创 7” LCD的内核配置文件

config_mini2440_vga1024x768–适用于 VGA显示输出(分辨率 1024x768)模块的内核

配置文件

1.配置缺省文件config_t35(统宝240x320)

# cd/opt/FriendlyARM/mini2440/linux-2.6.32.2

# cp config_mini2440_t35.config

# make menuconfig

出现界面

不做更改,exit退出。这样做是为了生成相应配置(统宝240x320)的头文件。

2.编译内核

在/opt/FriendlyARM/mini2440/linux-2.6.32.2目录下编译内核

#make zImage

编译结束后,会在 arch/arm/boot目录下生成 linux内核映象文件:zImage(zImage可下载到开发板测试)

3.定制linux内核(根据用户手册来走一遍)

# cd/opt/FriendlyARM/mini2440/linux-2.6.32.2

# make menuconfig

出现配置选项:

3.1配置cpu

主菜单-->System--> Type S3C2400 Machines--> FriendlyARM Mini2440 development board

3.2配置lcd驱动

主菜单-->Device Drivers-->Graphics support-->Support for frame buffer devices-->Backlight-->LCD select-->3.5 inch 240x320 Toppoly LCD

3.3配置触摸屏

主菜单-->Device Drivers-->Input device support-->Touchscreens-->Samsung s3c24410 touchscreen input driver

3.4配置usb鼠标和键盘

主菜单-->Device Drivers-->hid devices-->USB Human interface Device

3.5配置优盘

主菜单-->Device Drivers-->SCSI device support--> SCSI disk

3.6配置万能驱动USB摄像头

主菜单-->Device Drivers-->Multimedia devices-->Video capture adapters-->V4L USB devices-->GSPCA based webcams-->ALi USB m 5602 Camera Driver

3.7配置CMOS摄像头驱动

主菜单-->Device Drivers-->Multimedia devices-->Video capture adapters-->OV9650 on the s3c2440 driver

3.8配置网卡驱动

主菜单-->Netwoking support-->Networking options-->选择Unix和TCP/IP

主菜单-->Device Drivers-->Network device support-->Ethernet(10 or 100Mbit)-->

选择<*> Generic Media Independent Interface device support

<*> DM9000 support

3.9配置USB无线网卡驱动

主菜单-->Netwoking support-->wireless-->IEEE 802.11

主菜单-->Device Drivers-->Netwoking device support-->wireless LAN-->Wireless LAN(IEEE 802.11)-->Ralink driver support-->

3.10配置音频驱动

主菜单-->Device Drivers-->Sound card supprt-->OSS Mixer API-->ALSA for Soc audio support-->SoC Audio for the samsung S3Cxxxx Chips

3.11配置SD/MMC卡驱动

主菜单-->Device Drivers-->MMC/SD/SDIO card-->samsung S3C SD/MMC card

3.12配置看门狗驱动支持

主菜单-->Device Drivers-->Watchdog Timer-->s3c2440 Watchdog

3.13配置LED驱动

主菜单-->Device Drivers-->Character devices-->LED support for Mini2440

3.14配置按键驱动

主菜单-->Device Drivers-->Character devices-->Buttons driver

3.15配置PWM控制蜂鸣器驱动

主菜单-->Device Drivers-->Character devices-->buzzer driver for

3.16配置AD转换驱动

主菜单-->Device Drivers-->Character devices-->ADC driver for

3.17配置串口驱动

主菜单-->Device Drivers-->Character devices-->Serial drivers-->samsung S3C2440/S3C2442

3.18如何配置RTC实时时钟驱动

主菜单-->Device Drivers-->Real Time Clock-->samsung S3C series SoC RTC

3.19配置I2C-EEPROM驱动支持

主菜单-->Device Drivers-->I2C support-->I2C Hardware Bus support-->S3C2410 I2C Driver

3.20配置yaff2s文件系统的支持

主菜单-->Device Drivers-->MTD-->NAND Device Support-->NAND FLASH Support

主菜单-->File systems-->Miscellaneous filesystems-->YAFFS2 file system support

3.21配置EXT2/VFAT/ NFS等文件系统

主菜单-->File systems-->Network File Systems-->root file system on NFS

为了支持FAT32文件系统.

主菜单-->File systems-->DOS/FAT/NT Filesystems-->VFAT(windows-95) fs support

关于mini2440 linux内核裁剪到此为止,退出后有一个是否保存提示,选择保存!

3.22制作Linux logo

本来想使用Logomaker,结果生成的图片都是无数据的,这可能和系统内一些参数有关

使用命令方式制作logo:

在图片(open_show.png)目录下

# pngtopnm open_show.png> temp.ppm

# ppmquant 224 temp.ppm>temp2.ppm

# pnmnoraw temp2.ppm> logo.ppm

将目录下生成的logo.ppm改成linux_logo_clut224.ppm,替代linux2.6.32.2/drivers/video/logo目录下的同名文件

阅读剩余
THE END