Solved

Ignoring Athlon XP architecture at Linux Boot -- need i686 only

Posted on 2003-12-05
7
636 Views
Last Modified: 2008-03-06
Using RedHat ES 3.0.

I have an insmod'able .o file that will only run on i686, but not Athlon. A mess, but I have no choice. If 'uname -p' returns 'athlon', the .o file will not load, because of undefined symbols. Mostly look like network lib symbols.

'uname -m' returns 'i686', and 'uname -i' returns 'i386'. Those are ok.

Is there some way on grub boot to tell the OS that my architecture is not 'athlon', but 'pentium3' or some kind of pentium.

I don't think re-making the OS will help, I don't see any symbols in the various kernel makefiles that allow me to select the CPU type.

Short of getting a different motherboard and CPU (too expensive -- I need 2 GB RAM), I'm also willing to entertain other solutions.

Thanks.
BB
0
Comment
Question by:rjbryla
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
7 Comments
 
LVL 24

Expert Comment

by:shivsa
ID: 9886910
i think u may try setarch.

Setarch makes it possible to change the output produced by the uname  command. This is useful for a number of reasons, such as running 32-bit applications (those written to expect a particular value from uname -m) in 64-bit environments.

The format for the setarch command is:

setarch <arch> <command>

(Where <arch> represents the desired architecture string (such as i386), and <command> represents the command to be run while the architecture has been modified.) Note that <command> can be omitted, in which case /bin/sh is run.

In addition, some applications (such as older versions of Java) are written to assume a 3GB virtual address space; when run on systems with larger virtual address spaces (such as 64-bit AMD64-based systems, or 32-bit systems running the hugemem kernel) such applications can malfunction. The setarch utility makes it possible to emulate a 3GB virtual address space, allowing such applications to run properly:

setarch -3 java
0
 
LVL 51

Expert Comment

by:ahoffmann
ID: 9888369
could you please post the exact error messages, and which program produced it
0
 

Author Comment

by:rjbryla
ID: 9888494
'setarch' was something I originally thought of -- but when 'insmod' runs, it goes against the kernel symbols, which don't change when 'setarch' is run, so the problem remains.

Thanks for the suggestion.
0
 

Accepted Solution

by:
rjbryla earned 0 total points
ID: 9890711
Figured it out myself -- after an all-nighter -- I did finally have to rebuild the kernel.

Set the makefile parameter CONFIG_M686 to 'y', and commented out CONFIG_MK7.

THanks again for all your help.
0
 
LVL 24

Expert Comment

by:shivsa
ID: 9890731
Good to know you got the issue resolved. You can close the question by following this guidelines:
http://www.experts-exchange.com/help.jsp#hs5
0

Featured Post

Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Internal CA server 6 132
Ubuntu don’t allow SU command in terminal 7 121
http response code 3 36
umask commands 5 15
Have you tried to learn about Unicode, UTF-8, and multibyte text encoding and all the articles are just too "academic" or too technical? This article aims to make the whole topic easy for just about anyone to understand.
In the first part of this tutorial we will cover the prerequisites for installing SQL Server vNext on Linux.
Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:
Learn how to navigate the file tree with the shell. Use pwd to print the current working directory: Use ls to list a directory's contents: Use cd to change to a new directory: Use wildcards instead of typing out long directory names: Use ../ to move…

739 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question