This blog will assists TE Computer students to exchange study material of Embedded Operating Systems subject. Students can take maximum benefit of this blog while preparing this subject.
Tuesday, 31 March 2015
Friday, 27 March 2015
Writing your first device driver on Fedora19
Steps:
1. Create a C program.
2. Compile C program to get .o file
3. Convert .o file to .ko (kernel object) file
4. Insert .ko file
5. Check the existence of .ko file
6. Remove .ko file
ofd.c source code
/* ofd.c – Our First Driver code */
#include <linux/module.h>
#include <linux/version.h>
#include <linux/kernel.h>
static int __init ofd_init(void) /* Constructor */
{
printk(KERN_INFO "Hello : ofd registered");
return 0;
}
static void __exit ofd_exit(void) /* Destructor */
{
printk(KERN_INFO "Goodbye : ofd unregistered");
}
module_init(ofd_init);
module_exit(ofd_exit);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("VIIT Comp Dept");
MODULE_DESCRIPTION("Our First Driver");
Execution snapshot on Fedora 19 machine
1. Create a C program.
2. Compile C program to get .o file
3. Convert .o file to .ko (kernel object) file
4. Insert .ko file
5. Check the existence of .ko file
6. Remove .ko file
ofd.c source code
/* ofd.c – Our First Driver code */
#include <linux/module.h>
#include <linux/version.h>
#include <linux/kernel.h>
static int __init ofd_init(void) /* Constructor */
{
printk(KERN_INFO "Hello : ofd registered");
return 0;
}
static void __exit ofd_exit(void) /* Destructor */
{
printk(KERN_INFO "Goodbye : ofd unregistered");
}
module_init(ofd_init);
module_exit(ofd_exit);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("VIIT Comp Dept");
MODULE_DESCRIPTION("Our First Driver");
Contents of MakeFile
# Makefile – makefile of our first driver
# if KERNELRELEASE is defined, we've been invoked from the
# kernel build system and can use its language.
ifneq (${KERNELRELEASE},)
obj-m := ofd.o
# Otherwise we were called directly from the command line.
# Invoke the kernel build system.
else
KERNEL_SOURCE := /usr/src/kernels/3.18.7-100.fc20.x86_64
PWD := $(shell pwd)
default:
${MAKE} -C ${KERNEL_SOURCE} SUBDIRS=${PWD} modules
clean:
${MAKE} -C ${KERNEL_SOURCE} SUBDIRS=${PWD} clean
endif
Question bank Unit 4,5, and 6
Unit no: 4
1.
Explain bootloader in detail.
2.
Explain in details various challenges for bootloader in embedded
systems.
3.
Differentiate BIOS Vs bootloader.
4.
What is U-boot? Explain its configurable commands.
5.
Explain with the help of example module utilities used to add, delete
and display information of loadable modules.
6.
What do you understand by device driver? Write and explain your first
device driver.
7.
Write short notes on device driver categorization.
8.
Explain with the help of neat
diagram PCI device driver.
9.
Explain in short PCI configuration header.
10. What are the general steps
involved in PCI discovery process and probe function.
11. Define filesystem. Explain
embedded Linux filesystem hierarchy.
12. What is MTD subsystem? How
it is useful?
13. Explain JFFS2 file system
with applications.
14. Explain with the help of
diagram cross platform application development.
15. Why it’s desired in embedded
system to opt for cross platform application development?
16. Explain in detail embedded
development environment.
17. Explain in short DHCP
server, TFTP server.
Unit no: 5
1.
What is GNU Debugger? How it is used? Explain with the help of example.
2.
Explain various ways available to debug embedded applications.
3.
Explain in detail tracing and profiling tools.
4.
Explain graphics display of data in embedded system.
5.
Explain with the help of diagram how a kernel GDB (KGDB) setup works?
6.
Write short note on OpenGLES, GStreamer media framework.
7.
What is SSH? How it is helpful while communicating with the remote
machine?
8.
Compare SSH and telnet?
9.
Write short note on RCP and SCP.
10. What is stepper motor?
Explain its working in detail.
11. How to interface stepper
motor with BBB? Explain the necessary steps.
12. What is embedded graphics?
Explain its real time applications.
13. Explain any two multimedia
tools used in embedded systems.
14. Explain with example how
printk() is used debud the kernel.
15. Write short note on, DDL, EGL, OpenGL.
Unit no: 6
1.
What do you mean by porting Linux? What are the prerequisites needed to
do it?
2.
What is embedded Android? How it can be differentiated from embedded
Linux?
3.
Explain in detail the latency components of Linux operating system
4.
Which scheduling policies Linux uses to schedule real time processes?
Explain them with example.
5.
List and explain Linux kernel’s four preemption modes.
6.
List and explain design principles of embedded android bootloader.
7.
Draw a neat diagram and explain Android architecture.
8.
Explain with the help of diagram Android boot process.
9.
Explain in detail the development process of Android application.
10. Explain sequence of steps
involved in building and running Android application.
11. Write a source code to
develop Android application – calculator. You may consider Eclipse IDE’s project
hierarchy.
12. List and explain advantages and disadvantages of
using Android Operating system.
Subscribe to:
Posts (Atom)