Modules are pieces of code that can be loaded and unloaded into the kernel upon demand. They extend the functionality of the kernel without the need to reboot the system. For example, one type of module is the device driver, which allows the kernel to access hardware connected to the system. Without modules, we would have to build monolithic kernels and add new functionality directly into the kernel image. Besides having larger kernels, this has the disadvantage of requiring us to rebuild and reboot the kernel every time we want new functionality.
successfully implemented read and write operations .
DAILY WORK STATUS:
Introduction to character driver
1. driver insertion by insmod and deletion by rmmod is done successfully.
2. Also used moduleparam() macro for taking runtime arguments.
3.Used #define macro for prink system call…..
daily work status
character driver initalization and cleanup successfully implement……
DAILY WORK STATUS:
Introduction to character driver
1. driver insertion by insmod and deletion by rmmod is done successfully.
2. Also used moduleparam() macro for taking runtime arguments.
3.Used #define macro for prink system call…..
character driver insertion and clean up complete
DAILY WORK STATUS:
Introduction to character driver
1. driver insertion by insmod and deletion by rmmod is done successfully.
2. Also used moduleparam() macro for taking runtime arguments.
3.Used #define macro for prink system call…..
i have successfully implemented character driver initalization and cleanup……also used module_param() macro to give run time argument….
Successfully implement the spinlock for 4 applications .
In it first of all we define header file , declare pointer type variable in sculldev structure , initialize it after the cdev initialization .Made write and read functio in critical section lock in the write and unlock in the read function.
project 6 character driver.
project status
successfully implemented scull open .
currently working on writing to scull memory.
STATUS : PrOJECT 6:
i have implemented scull write function that my 39 byte data successfully entered into 5 quantums and showing proper dressing………………
now implementing scull read function and lseek function
WARNING: at fs/proc/generic.c:586 proc_register+0xff/0x1e0()
[ 8514.650694] Hardware name: Latitude E5500
[ 8514.650696] proc_dir_entry ‘/proc/proc3′ already registered
[ 8514.650697] Modules linked in: device_driver(O+) vfat fat usb_storage fuse ip6table_filter ip6_tables ebtable_nat ebtables ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack xt_CHECKSUM iptable_mangle bridge stp llc sunrpc cpufreq_ondemand acpi_cpufreq mperf capi kernelcapi btusb bluetooth snd_hda_codec_hdmi snd_hda_codec_idt snd_hda_intel snd_hda_codec snd_hwdep snd_seq snd_seq_device snd_pcm snd_timer snd dell_wmi sparse_keymap iTCO_wdt soundcore snd_page_alloc joydev iTCO_vendor_support dell_laptop rfkill dcdbas tg3 i2c_i801 microcode virtio_net kvm sdhci_pci sdhci mmc_core firewire_ohci firewire_core crc_itu_t yenta_socket wmi i915 drm_kms_helper drm i2c_algo_bit i2c_core video [last unloaded: device_driver]
[ 8514.650746] Pid: 5894, comm: insmod Tainted: G W O 2.6.43.8-1.fc15.i686.PAE #1
error in proc entry ….my lkm showing that proc entry is already registered …and kernel going to crash again and again ……
implemented till iocl. working on timing and measurement
implemented till ioctl
Successfully implemented ioctl.