The entire principle of cause and effect, upon which the entire scientific method is based on, breaks down when one looks at the origin of the Universe. "Where we came from" in science is simply the effect of some previous cause, so we can go all the way back to the Big Bang (or even a previous point of origin), then thats it.
You are assuming no infinite regression of causes. There is no reason to believe that the universe did not exist forever. Really: Why must it be bounded by a beginning or end?
Think about how often a complex solution is the answer. Quantum Physics vs. Classical Physics, for instance.
This is the error in your argument: classical physics is not a solution except for macroscopic systems. Atomic-scale systems were shown to follow behaviour not governed by classical physics, so quantum physics was developed as the next "simplest answer". So we had no choice between the two: one described the observed behaviour, and one didn't. Occam's razor does work. Perhaps it has no formal logical value, but as a practical rule of thumb to problem solving it is invaluable.
I think you're over-estimating the energy requirements of a car. An internal combustion engine is only about 20-30% efficient IIRC, so ~70% of that 25,000kWh is wasted. Thus, the car only requires 5,000kWh with ideal energy conversion. Electric motors exist with >85% efficieny, so perhaps 7,000kWh when all is said and done. And 20mpg is pretty terrible too. I'd say that is a gas guzzler.
it could easily be much cheaper to power your house from the fuel cell in your car than from the electric grid (high efficiency and no transmission losses, and no middle-men).
Try solar cells. Free power! (after the upfront investment) How novel. Modern photovoltaics can easily satisfy most power requirements.
the fact that we can chose to not act on ways we are "hard-wired" is what makes us human.
Yes, but it also doesn't automatically make the hard-wired urges wrong, which is what he's trying to say. Control the ones that are wrong, and indulge the ones that aren't if you like.
People never learn anything except from their own experience.
You're being overly optimistic and giving people too much credit. Really. Most of the problems in the world stem from people repeating the same mistakes over and over again.
The short version of the story is that it is an object oriented paradigm in which every class is a process and every instance is a thread. It needs hyper fast messaging and process/thread swapping. No other OS will do that.
Someone obviously hasn't done their research: L4 EROS
Both of these kernels are vastly superior to anything they will be able to build for message passing and context switching speed.
Small, all-electric vehicle. Two seater plus room for luggage, but definitely not a full-sized car.
From their page:
PERFORMANCE
Max. speed: 85 km/h / Range: 40-90 km, depending on driving style, topography and quantity of energy packs / Hill-start capability: 22% / Useful load: 2 persons plus luggage.
DRIVE
Electric: digital performance electronics with asynchronous motor / 3 kW continuous power, 5 kW peak power, regenerative braking and Tempomat cruise control / Muscle power: 2 mechanical pedals linked to a 5-speed hub gears, automatic pedal clutch / Energy Pack: NiCd 360 V, 2.0 to 3.3 KWh (2-3 modules each rated at 3.0 Ah, with individual electronic monitoring) / Energy consumption: 4-8 kWh/100 km from the mains, i.e. 10 times more economical than a small car / Energy costs: approx. one Swiss cent per kilometre, equivalent to 100 Fr. per year (10,000 km) / Rapid charge: 10-90 minutes (1 kilometre per minute) / Full charge: from 2 hours at 230 Volts / 10-Amp wall socket.
Have you seen Mozilla boot on even an 800Mhz P3? It takes forever.
I use Mozilla on a 233Mhz 604e PowerPC processor. It loads and runs faster than Netscape 4.x. And this is on a platform with less support than Windows. I also use it on Windows (both slow and fast) machines and it's fine. I don't know what you're griping about.
I wouldn't assume that - I think you are assuming too much by suggesting modern people are rational;)
Actually, in reading my post you will see lamentations on the lack of rationality of humanity.
I am assuming these people will do whatever they think they need to to survive. If a tribe has no water, they will die, thus they will take steps to avoid this. They're unlikely to consider the long term, because right now they have nothing to drink, and that's the sort of thing that brings the short term sharply into focus.
That's all well and good, and you are correct in that this is what they will most likely do. In fact, this is the way most of the world works now. However, this thread is not about how the world works, but how it should work; it's about how logic and morals should dictate your actions and why (especially on the subject of why it's never justified - and therefore always immoral - to initiate violence).
However, it will be difficult for you to explain this to the more backwards tribe as they are chewing your penis for the water content.
How do you plan to explain the value of logic and cooperation to someone who is about to stick something sharp and painful into you?
Why would you assume primitive cultures are more irrational than modern people? Don't you think they would see much it would pain you to lose your kid at it would them?
The half of the population who's most fit and most likely to make the trip goes. If my kid is weak and sick and not likely to make it, I would prefer if he/she would die with me, together, rather for them to die alone in the middle of a desert, to be abandoned.
I wouldn't. In moving, there's a chance of survival. In staying, there's almost none.
Droughts can, and have, come on suddenly, without any means of predicting them. (Imagine one caused by a meteor strike.) Technology may not be available to store food indefinitely against possible calamity. (And it hasn't, for most of human history, assuming there was a surplus to store.) You can't simply postulate "alternate sources of nutrition." Moving may easily not be an option.
By this, I meant that depending on one source to always sustain you is asking for disaster, and eventually disaster will happily oblige to strike. Same deal with petroleum based industries in the U.S. as evidence by the oil crisis. Same deal with near-miss asteroids. History has no sympathy for the ill-prepared. Let's just hope we have the nice silverware out before the next planet-killer comes knocking.
As for your fictional situation, there are a number of variables left out that could significantly affect the outcome. Where did the meteor hit (south,east west)? Is there some reason why they can't move east or west? The jungle to the east or west will not dry up so quickly as you might think. Furthermore, after the strike, there are likely to be many animals leaving the region as well; they are a source for further water. What about rain? What about plants that store water in their roots and leaves?
The real question of any such hypothetical situation comes down to: what will the violence actually do? Will it solve the problem? Sure, you just reduced the number of people that need water and you can drink their blood if you're that desperate. Is that an acceptable solution for anyone? No. Additionally, it should be obvious to anyone who thinks about it for 5 seconds that violence is going to kill some of the strongest of your tribe and worsen your chances for survival. So violence should be ruled out. But people don't think; they react rather than act, and it's truly unfortunate.
(What if, as often happens in the real world, the other tribe isn't inclined to listen to reason?)
This is the main point of my argument: there is no way other than logic to settle things properly. It's unfortunate that people behave irrationally, but it doesn't have to be.
To some extent, yes, but the alternative is not quite the return to nomadic hunter-gatherers as you portray.
It is the extreme, but the rule of thumb is: "if you don't want to see it taken to the extreme, then don't start in the first place." If everyone followed his beliefs through, the logical conclusion is proliferation of small gang cultures all at war with another looking after their own. Civilization would naturally fall in such an environment.
I asked her to imagine that there are two tribes living in a valley, and she's in one of those tribes. A drought hits. There simply isn't enough food to support both tribes.
Now, is she going to let her daughter starve, or is she going to provide the food to keep her alive, by force if necessary?
A good example. While it disproves your mother, it doesn't disprove me. If any violence were to erupt, as many people, and possibly more, would die as would die by lack of food. Furthermore, you would then be openly hostile to each other and breed animosity over generations, even after conditions improve. This leads to more violence. Violence breeds more violence in people who allow their instincts and emotions to dominate over reason.
In such a drought situation, both tribes were simply ill-prepared and can only blame themselves. I would say "move to more favourable circumstances or die." Or find alternate sources of nutrition. Violence is never preferable over other options, and initiating violence is always immoral.
In the real world things are never as clear-cut as they are in artificial moral dilemmas.
Then you simply haven't thought about the situation enough. Any situation can be reduced to a set of clear-cut circumstances. Those circumstances must be then be evaluated against their consequences and a decision can then be made.
But I think in some circumstances it can be moral to initiate force.
If you can provide such a situation, we can discuss it.
SURVIVAL UNDER ANY POSSIBLE MEANS is human nature.
No, it is animal nature. Human nature is that which is unique to humans, that which is beyond other animals: the ability to reason.
It is in my SELF-INTEREST to take care of me and my family. If it came down to my kid's life or some random stranger's life, I'll keep my kid's life.
Each of your actions is an expression how you think humanity should behave (NOTE: If you disagree with this, then you are somehow exempting yourself from the rules that apply to everyone else).
"In fact, in creating the man that we want to be, there is not a single one of our acts which does not at the same time create an image of man as we think he ought to be."~ Jean Paul Sartre ~
Your arguments indicate that you believe it is perfectly fine for families to kill each other if it is in their own self-interest. Thus, you are advocating a return to pre-civilized society. Your judgements about what is threatening are completely subjective and your willingness to sacrifice others to benefit yourself is frightening. What if you managed to create humanity in the image of your beliefs? Modern civilization would collapse and humanity would revert back to small hunterer-gatherer societies each looking after their own. The mark of civilization and morality is that we have developed alternatives to violence. Recourse to violence is only justified when violence is brought against you first.
Your beliefs lead to a conundrum: what if the person you were to kill with that button found out and decided to kill you before he could be killed? Who is in the right? You who are trying to save your family, or the stranger who is trying to save his life? Don't you see the huge problem with this moral relativism? The only possible resolution to this problem is that the initiator of violence is always wrong.
The point the original poster was trying to make is that you would not appreciate it if you or your kid was killed because someone pushed a button. If you don't want it to happen to you, then don't do it yourself.
Similar thing: If I had to sacrifice my life to save my kid's life, I would do the same.
Not even close to a similar thing. Your life is your own; you have no say over someone else's life.
If someone broke into your house at midnight, and you didn't know why they were there, what would you do?
The difference here is that the people who broke into your home initiated violence which forces you to defend yourself.
The moral judgement in all circumstances is "the initiator of violence is always in the wrong." Your willingness to kill by pressing a button when not in immediate danger yourself is thus immoral. Killing a stranger who has nothing to do with your plight to feed your family is also wrong. There is no, repeat NO, moral justification for initiating violence.
Under the right circumstances, you will kill.
Under the moral circumstances, yes.
It's not only HUMAN nature, but ANIMAL NATURE to survive AT ALL COSTS.
It is animal nature to survive at all costs; it is human nature to weigh the consequences of our actions and override our instincts if the costs are too high. I think you should re-examine your view of humanity.
Re:GCC 2.x and 3.x compiler
on
Pet Bugs?
·
· Score: 1
Correct (unless I misunderstood/misapplied the compile-time options). Compile options:
So it doesn't check the standard library includes, and it doesn't link against any standard files, including the Linux start files. Unless I missed something, it thus doesn't link against anything except my own code. Some of my own code implemented some routines like vsprintf, etc. but I didn't use those functions in the code (and I didn't have any structures in kybd.c so gcc wouldn't have referenced them implicitly).
The source for the keyboard driver is here if you want to see for yourself.
The root header include path is explictly set to src/include, so that's the stdio.h include you see pskybd.c referencing. That's where you'll find invoke.h and types.h too. If you're really curious (and adventurous), the whole project archive is there for the download. I apologize if the source in incomprehensible.;-)
I'm not sure if the problem still occurs since I haven't touched this code in months and work is pretty much done (project is over). I originally didn't have enough time to try and figure out what was going wrong in this situation, so it's still kind of a mystery.
Link order may depend on the alphabetical ordering of files, so you may end up with some initialization-time weirdnesses. I seem to recall the way the Linux kernel walks through driver initializers is link-order dependent, so your driver might be dependent on some other driver whose name comes after kybd but before pskybd.
Negative. It was a microkernel, so there are no internal drivers to speak of. kybd.c was a stand-alone executable application, so it did not link against anything, so link order should not matter at all. Good idea though, I may look into it some more if I have time.
Having the binary files differ means nothing -- some of the metadata in the object file will include the source filename, and the two source files names differ. Also, if any macros you used have a reference to __FILE__, you could get some differences there too
IIRC, I stripped the files of all symbols and they were still different.
Re:GCC 2.x and 3.x compiler
on
Pet Bugs?
·
· Score: 1
No, you are correct. The object file maintains the file name as one of it's symbols IIRC. But the tests I ran weren't so simplistic. I remember stripping the object file of all symbols(so it was just instructions) and diff'ing and it was still different. I just didn't want to go into that much detail.;-)
Re:GCC 2.x and 3.x compiler
on
Pet Bugs?
·
· Score: 1
It shouldn't matter. I'm compiling a kernel here don't forget, which means I'm not linking against ANY libraries; all purely my own code. Besides, didn't you see the diff at the end? Compiling kybd.c and pskybd.c produced different object files, and that's mind boggling.
Re:GCC 2.x and 3.x compiler
on
Pet Bugs?
·
· Score: 1
That's nothing! In writing an operating system kernel for my design project, gcc would generate code that crashed when my keyboard source file started with a 'k'! As soon as I renamed it, no other changes, it compiled and executed correctly. Just try to picture it:
The entire principle of cause and effect, upon which the entire scientific method is based on, breaks down when one looks at the origin of the Universe. "Where we came from" in science is simply the effect of some previous cause, so we can go all the way back to the Big Bang (or even a previous point of origin), then thats it.
You are assuming no infinite regression of causes. There is no reason to believe that the universe did not exist forever. Really: Why must it be bounded by a beginning or end?
Think about how often a complex solution is the answer. Quantum Physics vs. Classical Physics, for instance.
This is the error in your argument: classical physics is not a solution except for macroscopic systems. Atomic-scale systems were shown to follow behaviour not governed by classical physics, so quantum physics was developed as the next "simplest answer". So we had no choice between the two: one described the observed behaviour, and one didn't. Occam's razor does work. Perhaps it has no formal logical value, but as a practical rule of thumb to problem solving it is invaluable.
If there is no FTL then why on Earth would you travel decades in hibernation to reach a distant planet to colonize?
Have you seen the state of our world? I'm almost ready to leave.
I think you're over-estimating the energy requirements of a car. An internal combustion engine is only about 20-30% efficient IIRC, so ~70% of that 25,000kWh is wasted. Thus, the car only requires 5,000kWh with ideal energy conversion. Electric motors exist with >85% efficieny, so perhaps 7,000kWh when all is said and done. And 20mpg is pretty terrible too. I'd say that is a gas guzzler.
it could easily be much cheaper to power your house from the fuel cell in your car than from the electric grid (high efficiency and no transmission losses, and no middle-men).
Try solar cells. Free power! (after the upfront investment) How novel. Modern photovoltaics can easily satisfy most power requirements.
the fact that we can chose to not act on ways we are "hard-wired" is what makes us human.
Yes, but it also doesn't automatically make the hard-wired urges wrong, which is what he's trying to say. Control the ones that are wrong, and indulge the ones that aren't if you like.
People never learn anything except from their own experience.
You're being overly optimistic and giving people too much credit. Really. Most of the problems in the world stem from people repeating the same mistakes over and over again.
- Pentium 90
- 98 MB of RAM
- Adaptec SCSI card
- 8 GB Quantum Fireball IDE
- 2 GB SCSI
- 1 GB Quantum IDE drive
- Two Macronix Ethernet NICs
- Debian GNU/Linux 2.2r3 + security updates
On home LAN running:- Apache (http)
- Netatalk/Appletalk
- pop3
- imap
- imaps (imap tunneling over ssl)
- smtp
- smtps (smtp tunneling over ssl)
- Apache SSL (https)
- Webmail over https via horde+imp (php3)
- nfs
- ftp
- ntp time server
- postgreSQL database
- php+SQL based discussion forums (W-agora)
- ssh
- anonymous ftp
- rsync server
- IP Masquerading
- firewall
Not bad for a dinky little P90. hm?As for reproduction being unlikely, exactly how unlikely? 1 in a billion? 1 in a trillion? not good enough.
And the 100% likelihood of an ordinary virus replicating is better?
why not?
The short version of the story is that it is an object oriented paradigm in which every class is a process and every instance is a thread. It needs hyper fast messaging and process/thread swapping. No other OS will do that.
Someone obviously hasn't done their research:
L4
EROS
Both of these kernels are vastly superior to anything they will be able to build for message passing and context switching speed.
Small, all-electric vehicle. Two seater plus room for luggage, but definitely not a full-sized car.
From their page:
You can even pedal if you're up to it.
Have you seen Mozilla boot on even an 800Mhz P3? It takes forever.
I use Mozilla on a 233Mhz 604e PowerPC processor. It loads and runs faster than Netscape 4.x. And this is on a platform with less support than Windows. I also use it on Windows (both slow and fast) machines and it's fine. I don't know what you're griping about.
I wouldn't assume that - I think you are assuming too much by suggesting modern people are rational ;)
Actually, in reading my post you will see lamentations on the lack of rationality of humanity.
I am assuming these people will do whatever they think they need to to survive. If a tribe has no water, they will die, thus they will take steps to avoid this. They're unlikely to consider the long term, because right now they have nothing to drink, and that's the sort of thing that brings the short term sharply into focus.
That's all well and good, and you are correct in that this is what they will most likely do. In fact, this is the way most of the world works now. However, this thread is not about how the world works, but how it should work; it's about how logic and morals should dictate your actions and why (especially on the subject of why it's never justified - and therefore always immoral - to initiate violence).
However, it will be difficult for you to explain this to the more backwards tribe as they are chewing your penis for the water content.
How do you plan to explain the value of logic and cooperation to someone who is about to stick something sharp and painful into you?
Why would you assume primitive cultures are more irrational than modern people? Don't you think they would see much it would pain you to lose your kid at it would them?
The half of the population who's most fit and most likely to make the trip goes. If my kid is weak and sick and not likely to make it, I would prefer if he/she would die with me, together, rather for them to die alone in the middle of a desert, to be abandoned.
I wouldn't. In moving, there's a chance of survival. In staying, there's almost none.
Droughts can, and have, come on suddenly, without any means of predicting them. (Imagine one caused by a meteor strike.) Technology may not be available to store food indefinitely against possible calamity. (And it hasn't, for most of human history, assuming there was a surplus to store.) You can't simply postulate "alternate sources of nutrition." Moving may easily not be an option.
By this, I meant that depending on one source to always sustain you is asking for disaster, and eventually disaster will happily oblige to strike. Same deal with petroleum based industries in the U.S. as evidence by the oil crisis. Same deal with near-miss asteroids. History has no sympathy for the ill-prepared. Let's just hope we have the nice silverware out before the next planet-killer comes knocking.
As for your fictional situation, there are a number of variables left out that could significantly affect the outcome. Where did the meteor hit (south,east west)? Is there some reason why they can't move east or west? The jungle to the east or west will not dry up so quickly as you might think. Furthermore, after the strike, there are likely to be many animals leaving the region as well; they are a source for further water. What about rain? What about plants that store water in their roots and leaves?
The real question of any such hypothetical situation comes down to: what will the violence actually do? Will it solve the problem? Sure, you just reduced the number of people that need water and you can drink their blood if you're that desperate. Is that an acceptable solution for anyone? No. Additionally, it should be obvious to anyone who thinks about it for 5 seconds that violence is going to kill some of the strongest of your tribe and worsen your chances for survival. So violence should be ruled out. But people don't think; they react rather than act, and it's truly unfortunate.
(What if, as often happens in the real world, the other tribe isn't inclined to listen to reason?)
This is the main point of my argument: there is no way other than logic to settle things properly. It's unfortunate that people behave irrationally, but it doesn't have to be.
To some extent, yes, but the alternative is not quite the return to nomadic hunter-gatherers as you portray.
It is the extreme, but the rule of thumb is: "if you don't want to see it taken to the extreme, then don't start in the first place." If everyone followed his beliefs through, the logical conclusion is proliferation of small gang cultures all at war with another looking after their own. Civilization would naturally fall in such an environment.
I asked her to imagine that there are two tribes living in a valley, and she's in one of those tribes. A drought hits. There simply isn't enough food to support both tribes.
Now, is she going to let her daughter starve, or is she going to provide the food to keep her alive, by force if necessary?
A good example. While it disproves your mother, it doesn't disprove me. If any violence were to erupt, as many people, and possibly more, would die as would die by lack of food. Furthermore, you would then be openly hostile to each other and breed animosity over generations, even after conditions improve. This leads to more violence. Violence breeds more violence in people who allow their instincts and emotions to dominate over reason.
In such a drought situation, both tribes were simply ill-prepared and can only blame themselves. I would say "move to more favourable circumstances or die." Or find alternate sources of nutrition. Violence is never preferable over other options, and initiating violence is always immoral.
In the real world things are never as clear-cut as they are in artificial moral dilemmas.
Then you simply haven't thought about the situation enough. Any situation can be reduced to a set of clear-cut circumstances. Those circumstances must be then be evaluated against their consequences and a decision can then be made.
But I think in some circumstances it can be moral to initiate force.
If you can provide such a situation, we can discuss it.
Granted, you didn't say that my children were about to starve to death, but in desperate situation, everyone's morals and beliefs would change.
Your current morals and beliefs should take into account such desperate situations. They shouldn't have to change.
SURVIVAL UNDER ANY POSSIBLE MEANS is human nature.
No, it is animal nature. Human nature is that which is unique to humans, that which is beyond other animals: the ability to reason.
It is in my SELF-INTEREST to take care of me and my family. If it came down to my kid's life or some random stranger's life, I'll keep my kid's life.
Each of your actions is an expression how you think humanity should behave (NOTE: If you disagree with this, then you are somehow exempting yourself from the rules that apply to everyone else).
"In fact, in creating the man that we want to be, there is not a single one of our acts which does not at the same time create an image of man as we think he ought to be."~ Jean Paul Sartre ~
Your arguments indicate that you believe it is perfectly fine for families to kill each other if it is in their own self-interest. Thus, you are advocating a return to pre-civilized society. Your judgements about what is threatening are completely subjective and your willingness to sacrifice others to benefit yourself is frightening. What if you managed to create humanity in the image of your beliefs? Modern civilization would collapse and humanity would revert back to small hunterer-gatherer societies each looking after their own. The mark of civilization and morality is that we have developed alternatives to violence. Recourse to violence is only justified when violence is brought against you first.
Your beliefs lead to a conundrum: what if the person you were to kill with that button found out and decided to kill you before he could be killed? Who is in the right? You who are trying to save your family, or the stranger who is trying to save his life? Don't you see the huge problem with this moral relativism? The only possible resolution to this problem is that the initiator of violence is always wrong.
The point the original poster was trying to make is that you would not appreciate it if you or your kid was killed because someone pushed a button. If you don't want it to happen to you, then don't do it yourself.
Similar thing: If I had to sacrifice my life to save my kid's life, I would do the same.
Not even close to a similar thing. Your life is your own; you have no say over someone else's life.
If someone broke into your house at midnight, and you didn't know why they were there, what would you do?
The difference here is that the people who broke into your home initiated violence which forces you to defend yourself.
The moral judgement in all circumstances is "the initiator of violence is always in the wrong." Your willingness to kill by pressing a button when not in immediate danger yourself is thus immoral. Killing a stranger who has nothing to do with your plight to feed your family is also wrong. There is no, repeat NO, moral justification for initiating violence.
Under the right circumstances, you will kill.
Under the moral circumstances, yes.
It's not only HUMAN nature, but ANIMAL NATURE to survive AT ALL COSTS.
It is animal nature to survive at all costs; it is human nature to weigh the consequences of our actions and override our instincts if the costs are too high. I think you should re-examine your view of humanity.
Correct (unless I misunderstood/misapplied the compile-time options). Compile options:
;-)
GCC_FLAGS= -Wall -O2 -finline-functions -fno-builtin -nostdinc
LD_FLAGS= -Bstatic -Ttext 0x220000 -s -nostartfiles -nostdlib
So it doesn't check the standard library includes, and it doesn't link against any standard files, including the Linux start files. Unless I missed something, it thus doesn't link against anything except my own code. Some of my own code implemented some routines like vsprintf, etc. but I didn't use those functions in the code (and I didn't have any structures in kybd.c so gcc wouldn't have referenced them implicitly).
The source for the keyboard driver is here if you want to see for yourself.
The root header include path is explictly set to src/include, so that's the stdio.h include you see pskybd.c referencing. That's where you'll find invoke.h and types.h too. If you're really curious (and adventurous), the whole project archive is there for the download. I apologize if the source in incomprehensible.
I'm not sure if the problem still occurs since I haven't touched this code in months and work is pretty much done (project is over). I originally didn't have enough time to try and figure out what was going wrong in this situation, so it's still kind of a mystery.
Link order may depend on the alphabetical ordering of files, so you may end up with some initialization-time weirdnesses. I seem to recall the way the Linux kernel walks through driver initializers is link-order dependent, so your driver might be dependent on some other driver whose name comes after kybd but before pskybd.
Negative. It was a microkernel, so there are no internal drivers to speak of. kybd.c was a stand-alone executable application, so it did not link against anything, so link order should not matter at all. Good idea though, I may look into it some more if I have time.
Having the binary files differ means nothing -- some of the metadata in the object file will include the source filename, and the two source files names differ. Also, if any macros you used have a reference to __FILE__, you could get some differences there too
IIRC, I stripped the files of all symbols and they were still different.
No, you are correct. The object file maintains the file name as one of it's symbols IIRC. But the tests I ran weren't so simplistic. I remember stripping the object file of all symbols(so it was just instructions) and diff'ing and it was still different. I just didn't want to go into that much detail. ;-)
It shouldn't matter. I'm compiling a kernel here don't forget, which means I'm not linking against ANY libraries; all purely my own code. Besides, didn't you see the diff at the end? Compiling kybd.c and pskybd.c produced different object files, and that's mind boggling.
and they aren't wrong, and we aren't wrong
One of you has to be wrong.
That's nothing! In writing an operating system kernel for my design project, gcc would generate code that crashed when my keyboard source file started with a 'k'! As soon as I renamed it, no other changes, it compiled and executed correctly. Just try to picture it:
... (blah)
$ ls
kybd.c
$ make
(compiling)
(try the kernel, it crashes)
$ mv kybd.c pskybd.c
$ make
(compiling)
(try kernel and it runs perfectly)
$ mv pskybd.c kybd.c
$ make
(compiling)
(try kernel and crashes again!!!)
$ diff kybd.o pskybd.o
Binary files kybd.o and pskybd.o differ
WTF?!? Inconceivable! Doing a 'diff'