12
FOSS Gadgematics By Buddhika Siddhisena Co-Founder & CTO THINKCube Systems Pvt. Ltd <[email protected]> Member of LKLUG & FOSS.LK <[email protected]>

Foss Gadgematics

Embed Size (px)

DESCRIPTION

FOSS and Linux in particular provides an excellent OS when it comes to hacking gadgets. This presentation created a couple of years back presents GNU/Linux as the unconventional OS that makes this all possible!

Citation preview

Page 1: Foss Gadgematics

FOSS Gadgematics

ByBuddhika SiddhisenaCo-Founder & CTO

THINKCube Systems Pvt. Ltd<[email protected]>

Member of LKLUG & FOSS.LK<[email protected]>

Page 2: Foss Gadgematics

2

Coverage

• Overview of Linux supported devices

• Linux supported Architectures

• Linux device drivers

• Compiling a Linux kernel

• Hardware detection

• Hacking devices to run Linux

Page 3: Foss Gadgematics

3

Overview of Linux supported devices

Page 4: Foss Gadgematics

4

Linux supported Architectures

The Linux kernel can theoretically be ported to any architecture supporting a Paged Memory Management Unit (PMMU)

Certain non MMU processors are also supported via uCLinux

For the latest list on officially supported architecturels /usr/src/linux/arch

Page 5: Foss Gadgematics

5

Supports more architectures

FOSS Operating systems supports more cpu architectures

The small notebook below uses the Transmita Cruso processor which is x86 compatible. Linux has optimizations for the Cruso processor

Above is a Mac-mini powered by a PPC processor and below is a ShuttleX powered by an AMD64 processor. Both run optimized GNU/Linux and BSD

Page 6: Foss Gadgematics

6

Checking what devices are connected to your Linux box

• To manually look at what hardware is available on your machine, several commands can be used

• To automatically detect hardware at boot time and load appropriate kernel module drivers you can install a hardware detection utility such as kudzu or discover

• To detect hardware as they are hot plugged, such as USB memory sticks, cameras and printers you can run the hotplug service (deprecated, uses hald wih dbus instead).

• More recently hald/dbus has replaced hotplug as a way of dynamically loading device drivers and notifying applications of hardware changes via a message bus.

linux:# lspci -vlinux:# lsusb

linux:# /etc/init.d/hotplug start

Page 7: Foss Gadgematics

7

Manually loading Linux device drivers

• Device drivers on Linux are implemented at a kernel level

• Device Drivers can be compiled directly in to the kernel or as a loadable module.

• To list modules that are currently loaded you can issue

• To list available modules (compiled) for the current kernel

• To get a small description about a module ...

• To load a kernel module driver manually

• To load a kernel drive automatically as the machine boots consider adding it to /etc/modules.conf (2.4) or /etc/modprobe.conf (2.6)

#lsmod

#modprobe -l

#modinfo radeon

#modprobe radeon

Page 8: Foss Gadgematics

8

Compiling device drivers

linux:/usr/src/linux# make menuconfig

Page 9: Foss Gadgematics

9

Unconventional Installation - USB/SD/MMC

Unconventional Installations Methods

•“There are several mini distros that can be installed on USB pen drives or CF/SD cards”

Ex: •DSL (Damm Small Linux)•SLAX•Puppy

Page 10: Foss Gadgematics

10

Unconventional Devices

X – Box running Linux

iPAQ running Linux

X – Box running Linux

Phones running Linux

iPOD running Linux

PlayStation running Linux

Gumstick computer

running Linux

Unconventional Devices

PSP running FOSS apps

Page 11: Foss Gadgematics

11

FOSS based gadgets

http://wiki.gp2x.org/wiki/Main_Page

GP2X runs on Linux and is open to developers to build applications

http://opensource.nokia.com/http://www.nokiausa.com/770

Nokia 770 runs on a flavour of Debian GNU/Linux and is open to developers to build applications

Page 12: Foss Gadgematics

12

Unconventional Ending

Thank You

Unconventional Ending....

[email protected]@linux.lk

[email protected]