Sponsored Content
Operating Systems Linux Red Hat Adding our system call Fedora 18 -new syscall Post 302796925 by googz on Sunday 21st of April 2013 04:51:24 PM
Old 04-21-2013
If i have 64 btis system then i have still to edit this file: "unistd_32.h"?

---------- Post updated at 03:51 PM ---------- Previous update was at 10:35 AM ----------

I must add syscall in Fedora 18 kernel 3.8.2 32 or 64. I take 32 on virtual box.
First i tried this:

"
  • Upzip it with command ‘tar xvfj XXX” to a folder For example : /root/kernel tar xvfj linux-3.3.1.tar.bz2
  • Edit file “/root/kernel/linux-3.3.1/arch/x86/syscalls/syscall_64.tbl” Add new line
312 64 husky1 sys_husky1
  • Eidt file “/root/kernel/linux-3.3.1/include/linux/syscalls.h” Add new function declaration
asmlinkage long sys_husky1(int fd);
before the line “#endif”
  • Add a new c file under “/root/kernel/linux-3.3.1/arch/x86/kernel” (I am using x86 CPU) Example :
  • Edit “/root/kernel/linux-3.3.1/arch/x86/kernel/Makefile” Add a new line “obj-y += husky.o”
  • goto /root/kernel/linux-3.3.1 folder and run command “make –j8” "


but after make menuconfig
and then make
I got this warning: "warning: function declaration isn't a prototype"


this is my demosys.c file:


Code:
#include <linux/linkage.h> 
#include <linux/kernel.h>  
asmlinkage long sys_democall()
 {     
                        printk ("Hello world\n");   
  
                        return 0; 
}

and this is my declaration in linux-3.8.2/include/linux/syscalls.h
Code:
asmlinkage long sys_democall(void);

and linux-3.3.1/arch/x86/syscalls/syscall_32.tbl
351 i386 democall sys_democall


Is this method good to add system call?
Did this erorr interferes with something?
after end of compilation my syscall will work?
 

6 More Discussions You Might Find Interesting

1. Red Hat

Fedora - A confiusing operating system!!

I don't know why all these complicated stuff?! I have Fedora Core 3 installed on my Laptop. It has the apache 2.0 + php 4.3.0 installed on it. But for some reasons I need to remove them and install everything by myself. However, I don't see any way to remove a software from this silly oprating... (9 Replies)
Discussion started by: HSN
9 Replies

2. Shell Programming and Scripting

solaris and fedora core in one system

How can I keep Solaris 10 GA with Fedora core 3 in the same system.I have got IBM Netvista system with 40 gb hdd ,128mb ram,pentium 4 1.66 gb processor.Pls tell me in detail,otherwise provide me good Url. :) :eek: :confused: (1 Reply)
Discussion started by: xinubhaskar
1 Replies

3. UNIX for Advanced & Expert Users

solaris and fedora core in one system

How can I keep Solaris 10 GA and Fedora Core 3 In the same machine.I have got IBM netvista machine,with 40 gb hdd and 128 mb ram and 1.6 gzh pentium processor.Give me the step in detail.How do I pertition?How can I boot up both? :( :eek: :confused: (2 Replies)
Discussion started by: xinubhaskar
2 Replies

4. UNIX for Advanced & Expert Users

how to differentiate system call from library call

Hi, Ho do I differentiate system call from library call? for example if I am using chmod , how do I find out if it is a system call or library call? Thanks Muru (2 Replies)
Discussion started by: muru
2 Replies

5. Programming

Adding custom ("Hello") system call: help

I'm trying to add a custom ("Hello world" :o) system call. In /usr/src/linux/hello/ I put simple hello.c ...#include "linux/linkage.h" // for linking a system call #include "linux/kernel.h" // for "printk" asmlinkage int sys_hello() { printk(KERN_ALERT "Hello!"); return 1; }... and in... (5 Replies)
Discussion started by: courteous
5 Replies

6. Emergency UNIX and Linux Support

Bad Address when adding system call

Hi guys. I have downloaded kernel 2.6.38-5 to add a system call. I did the following steps: 1. I have added my system call to system call table <src folder>/arc/x86/kernel/syscall_table_32.S .long sys_mycall 2. i have added the system cal number in <src... (5 Replies)
Discussion started by: majid.merkava
5 Replies
SWITCH_ROOT(8)                                                 System Administration                                                SWITCH_ROOT(8)

NAME
switch_root - switch to another filesystem as the root of the mount tree SYNOPSIS
switch_root [-hV] switch_root newroot init [arg...] DESCRIPTION
switch_root moves already mounted /proc, /dev, /sys and /run to newroot and makes newroot the new root filesystem and starts init process. WARNING: switch_root removes recursively all files and directories on the current root filesystem. OPTIONS
-h, --help Display help text and exit. -V, --version Display version information and exit. RETURN VALUE
switch_root returns 0 on success and 1 on failure. NOTES
switch_root will fail to function if newroot is not the root of a mount. If you want to switch root into a directory that does not meet this requirement then you can first use a bind-mounting trick to turn any directory into a mount point: mount --bind $DIR $DIR SEE ALSO
chroot(2), init(8), mkinitrd(8), mount(8) AUTHORS
Peter Jones <pjones@redhat.com> Jeremy Katz <katzj@redhat.com> Karel Zak <kzak@redhat.com> AVAILABILITY
The switch_root command is part of the util-linux package and is available from https://www.kernel.org/pub/linux/utils/util-linux/. util-linux June 2009 SWITCH_ROOT(8)
All times are GMT -4. The time now is 11:35 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy