Sponsored Content
Top Forums Programming Running bin file from a module Post 302506162 by Corona688 on Friday 18th of March 2011 04:55:25 PM
Old 03-18-2011
Quote:
Originally Posted by Chrisdot
Well, I show you "Big picture" as you asked for.

Actors:
User
PC with preinstalled OS: RedHat from 2010year
Network Interface Card (let's call it "NIC") produced in 2011year

Usage model:
1. User plugs NIC to PCIe bus in PC
2. User turns on PC
3. User has got an internet connection

Do you got the idea? Just plug and play - no drivers, no additional installations, etc.
Well that only took three entire pages of begging. THANK YOU.

I think you may be going about this the wrong way still though. The way to do this would be to add general-purpose UEFI support to Linux, not to hack one special thing that supports UEFI. And you'd probably want to use some sort of emulator, not something that converts UEFI code into whatever code your kernel uses.

But the biggest problem is I'm not sure UEFI even applies once an operating system's been loaded. Linux used to support BIOS-mode disk devices, for example, until it became clear that there were just too many corner cases where running in protected mode and controlling your own interrupts and DMA and all that jazz prevented BIOS calls from being able to work the way it was intended no matter how hard you tried to fool them. Sometimes. Very firmware-dependent. So they dropped that and added support for droves of different hard drive controllers instead, and that's how it's worked for a long time. Some coherent standards like AHCI are helping make drivers more generic again though.

You could make something like a DOS around raw UEFI devices -- a small self-contained OS which relies on system firmware to do most of the work. It could be surprisingly sophisticated with the system firmware features available now. Networking and graphics could be sufficient to run a reasonable impression of a web browser to download and save drivers with.

Last edited by Corona688; 03-18-2011 at 06:04 PM..
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

/bin/sh: /usr/bin/vi: No such file or directory when doing crontab

I just set up an ftp server with Red Hat 5.2. I am doing the work, I'm baby stepping, but it seems like every step I get stuck. Currently, I'm trying to set up a crontab job, but I'm getting the following message: /bin/sh: /usr/bin/vi: No such file or directory. I see that vi exists in /bin/vi,... (3 Replies)
Discussion started by: kwalter
3 Replies

2. Programming

find the fully-qualified path for the app my module is running in

Hi- I need the cpp call that will tell me the full path to the app I'm running in. For example, I'm running in a loaded library for either mozilla or firefox, but would like to know the full path to the executable /usr/bin/firefox /usr/bin/mozilla /usr/local/firefox1_5 etc... (For... (4 Replies)
Discussion started by: erwinfletch
4 Replies

3. Linux

How to convert Linux Kernel built-in module into a loadable module

Hi all, I am working on USB data monitoring on Fedora Core 9. Kernel 2.6.25 has a built-in module (the one that isn't loadable, but compiles and links statically with the kernel during compilation) to snoop USB data. It is in <kernel_source_code>/drivers/usb/mon/. I need to know if I can... (0 Replies)
Discussion started by: anitemp
0 Replies

4. Shell Programming and Scripting

Why does my /bin/csh take longer than /bin/perl?

Okay, so I have two "Hello, world!" scripts, "test.pl" and "test.sh". #!/bin/perl -w use strict; print "Hello, world!\n"; #!/bin/csh echo Hello,\ world! When I run test.pl, it runs instantly, always. When I run test.sh, it takes anywhere between 4 and 22 seconds! I'd like to know what... (3 Replies)
Discussion started by: acheong87
3 Replies

5. UNIX for Dummies Questions & Answers

fuser: difference with bin/sh and bin/ksh shell script

Hi, I have a problem I don't understand with fuser. I launch a simple shell script mysleep.sh: I launch the command fuser -fu mysleep.sh but fuser doesn't return anything excepted: mysleep: Then I modify my script switching from #!/bin/sh to #!/bin/ksh I launch the command fuser -fu... (4 Replies)
Discussion started by: Peuj
4 Replies

6. OS X (Apple)

When to use /Users/m/bin instead of /usr/local/bin (& whats the diff?)?

Q1. I understand that /usr/local/bin means I can install/uninstall stuff in here and have any chance of messing up my original system files or effecting any other users. I created this directory myself. But what about the directory I didn't create, namely /Users/m/bin? How is that directory... (1 Reply)
Discussion started by: michellepace
1 Replies

7. Programming

Why am i getting these strange packets while running my packet capture module written in c.?

I have made an packet capture application running on intel machine, it is capturing packets with src address- 17.0.0.0 destination ip- 66.0.0.0, source port- 0, destination port- 0, and protocol- 0 what does these packets mean ? The code written to interpreter captured bytes is given below.... (5 Replies)
Discussion started by: arunpushkar
5 Replies

8. Ubuntu

Compile smbfs module in kernel version 3.10 running Ubuntu 12.04 LTS

Is there any way to compile smbfs module in kernel 3.10 running Ubuntu 12.04 LTS. I did a 'make menuconfig' and it shows cifs. I found out online that smbfs is deprecated and replaced by cifs. I have an old system with kernel version 2.4 which only has smbfs (no cifs). Is it possible to compile... (1 Reply)
Discussion started by: Monil
1 Replies

9. AIX

Redistribution bin required for AIX. j7r164redist.7.1.0.25.bin

Hi, I am planning to install a version of Informatica on my AIX box. It requires a specific java build in pap6470_27sr2-20141101_01(SR2). The current link for IBM 64-bit SDK for AIX®, JavaTM Technology Edition, Version 7 Release 1 has a more recent version in j7r164redist.7.1.0.75.bin. Is... (4 Replies)
Discussion started by: meetpraveens
4 Replies

10. Shell Programming and Scripting

Usage of #!/bin/sh vs #!/bin/bash shell scripts?

Some question about the usage of shell scripts: 1.) Are the commands of the base shell scripts a subset of bash commands? 2.) Assume I got a long, long script WITHOUT the first line. How can I find out if the script was originally designed für "sh" or "bash"? 3.) How can I check a given... (3 Replies)
Discussion started by: pstein
3 Replies
MKDNS323FW(1)							   User Commands						     MKDNS323FW(1)

NAME
mkdns323fw - build firmware images for the DNS-323 from a kernel and initrd SYNOPSIS
mkdns323fw -k KERNEL -i INITRD [-d DEFAULTS] -p PRODUCT_ID -c CUSTOM_ID -m MODEL_ID -o OUTPUTFILE DESCRIPTION
mkdns323fw creates firmware images suitable for upload to the D-link DNS-323 and other, similar devices based on the same basic firmware image, such as the Conceptronics CH3SNAS. These firmware images contain a kernel and initrd, as well as various product-specific values and checksums. This command can be very dangerous; although it attempts to do some very, very basic sanity checking, it is still quite easy to generate a firmware file that, when loaded into your device, will kill it stone dead. This program is not able to check that you're uploading valid data to your device; if you brick it, you're on your own. -k kernel, --kernel=kernel specify the file containing the kernel image to embed in the firmware image. This must be a uBoot image file, as produced by mkim- age(1) with appropriate options to specify it as a kernel image. Attempts to provide a non-uBoot file will fail, while specifying a non-kernel uBoot file may well brick your device. This option is required. -i initrd, --initrd=initrd the initrd file to embed in the firmware image. This must be a uBoot image file, as produced by mkimage(1) with appropriate options to specify it as a ramdisk. The tool will refuse to embed a non-uBoot file, however a dodgy ramdisk will likely brick your device. -d defaults.tar.gz, --defaults=defaults.tar.gz The firmware format has the ability to embed a tarball with a default configuration; if you want to do this, you may use this option to do so. However, the devices that the author has dealt with do not require such a thing, and leaving it out still produces a valid firmware (and one that is a bit smaller, to boot). -s signature, --defaults=signature For reasons that will probably remain unknown until the ends of time, there are (at least) two different firmware signatures running around that are otherwise identical in their internal structure, which are used for different devices. This option exists to allow you to specify the signature that you want to use in your firmware build. Valid values for this option are currently FrodoII (R)(the default if this option is not specified), Chopper (R)or Gandolf (R)which is used in some devices. See the table at the top of the script if you don't know which value to use for your device. --p product_id, --product-id=product_id --c custom_id, --custom-id=custom_id --m model_id, --model-id=model_id Specify the product, custom, and model ID that this firmware image is intended for. As several different devices share the same firmware format, the intended device type is encoded in these fields. If you do not specify the correct values for the device that you are targetting with your firmware, it is quite likely that the device will refuse the upload. Known-good values for various devices are provided in the header of the script; please look there for more information. You can also obtain the values you need by downloading an existing firmware for the device you're targetting and doing a bit of digging. -o outputfile, --output=outputfile Where to write the completed firmware image. Will overwrite any existing file of the same name. BUGS
E-mail bug reports to theshed+dns323-firmware-tools@hezmatt.org. I don't guarantee to be able to help, but I'll give it a shot. Patches are far more helpful. AUTHOR
mkdns323fw was written by Matt Palmer, based on reverse-engineering work done by Leschinsky Oleg. COPYRIGHT
Copyright (C) 2008 Matt Palmer. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICU- LAR PURPOSE, to the extent permitted by law. SEE ALSO
mkimage(1), splitdns323fw(1). dns323-firmware-tools 0.1 October 2008 MKDNS323FW(1)
All times are GMT -4. The time now is 01:07 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy