As the complexity of the Linux kernel increases, what is the kernel community doing to educate the next crop of kernel developers? I know that the "teach yourself" mentality that permeates the open-source community makes this uninteresting in some circles, but are there any free courses that you'd recommend for getting into kernel development? If not, how would you recommend that someone interested in computer science education set about getting something like this up and running? Partnerships with free online universities like Udacity, partnerships with ISPs to provide a configurable development environment, etc... what can we do?
What's even worse is that most of the out of date documents are abandoned, and emails with updates are ignored. I actually wrote updates to the Zip Drive Mini-HOWTO and, after the email to the maintainer bounced, was just ignored by whomever handles the email for TLDP. I don't see why we have to have such a congratulatory piece on slashdot; the headline should have read "After 10 years, TLDP struggles to live up to its name".
There are a few debates raging in linux kernel development these days. I was just interested in hearing IBM's take on a few of these subjects:
[1] Rik van Riel VM (RMAP) or Andrea Arcangeli VM? [2] Is a new kernel build system needed for the linux kernel? [3] Modules/InitRAMFS or regular ol' monolithic kernel? [4] Which journaling file system does IBM see becoming the de facto journaling file system for Linux? In other words, what's so cool about JFS:)?
I apologize for sneaking in a few too many questions.
Anyway, hope this helps. If you want to read more on this, you might want to check out www.kernelnewbies.org.
Major breakage in this kernel.
on
2.5.4 Kernel Out
·
· Score: 5, Informative
There was a change to the API in this kernel release which breaks a bunch of drivers for the moment. Specifically, all drivers that allocate buffers using the kmalloc/__get_free_pages and virt_to_bus will not link. Right now, I can see atleast two groups of drivers affected: some USB, and the PCI sound drivers.
Even if you don't see the above problem, this kernel will not compile (atleast on most i386 systems) without the following patch:
--- linux-2.5.4/include/asm-i386/processor.h Sun Feb 10 22:00:29 2002
+++ 25/include/asm-i386/processor.h Sun Feb 10 22:21:53 2002
@@ -435,14 +435,7 @@ extern int kernel_thread(int (*fn)(void
/* Copy and release all segment info associated with a VM */
extern void copy_segments(struct task_struct *p, struct mm_struct * mm);
extern void release_segments(struct mm_struct * mm);
-
-/*
- * Return saved PC of a blocked thread.
- */
-static inline unsigned long thread_saved_pc(struct task_struct *tsk)
-{
- return ((unsigned long *)tsk->thread->esp)[3];
-}
+extern unsigned long thread_saved_pc(struct task_struct *tsk);
unsigned long get_wchan(struct task_struct *p);
#define KSTK_EIP(tsk) (((unsigned long *)(4096+(unsigned long)(tsk)->thread_info))[1019])
--- linux-2.5.4/arch/i386/kernel/process.c Sun Feb 10 22:00:28 2002
+++ 25/arch/i386/kernel/process.c Sun Feb 10 22:26:35 2002
@@ -55,6 +55,14 @@ asmlinkage void ret_from_fork(void) __as
int hlt_counter;
/*
+ * Return saved PC of a blocked thread.
+ */
+unsigned long thread_saved_pc(struct task_struct *tsk)
+{
+ return ((unsigned long *)tsk->thread.esp)[3];
+}
+
+/*
* Powermanagement idle function, if any..
*/
void (*pm_idle)(void);
When thinking about netflix, I basically compare it to my other option: Blockbuster.
Price: I rented 24 movies in my 3 months as a member of Netflix. That comes out to a little under $3.00 per movie. At Blockbuster, DVD rental costs $3.99 each, and another $1.50 every three rentals (the cost of the NYC subway token to the Blockbuster rental place). Advantage: Netflix.
Convenience: Blockbuster makes me physically drop off the movies, and charges late fees if I don't return movies within 2 days. Netflix uses the US mail system, and does not care when I get a movie back to them. Furthermore, Blockbuster does not refund the cost of the subway token when I visit their location to rent a movie that they don't have that day, so I end up renting some crappy movie to offset my fixed cost per visit. Advantage: Netflix.
Selection: I can rent Joseph Campbell's The Power of Myth, Anime titles, Kurosawa films, the full first season of Twin Peaks. Non of these titles are available at Blockbuster right now. Advantage: Netflix.
Availibility: I have had better luck than most people with regard to availability at Netflix. The only movie I have had to wait for was Joseph Campbell's Power of Myth, which I couldn't rent at any blockbuster in New York City. Therefore, I give them both equal grades on availability.
One of my biggest concerns regarding the adoption of Linux by the public sector is the availability of human resources. Having worked for several non-profits I can say that it is a lot harder for public institutions (and especially government) to hire the right people because there are always political problems. For example, how many Linux professionals come from areas outside the United States? If the government can only hire US citizens, then it will have to cut out a significant portion of its applicant pool. A pool that even on a world-wide level is not that big. As a result, it will have to step up and compete for a resource like a "Linux Systems Administrator" in the US labor market. Given the short supply of these types of people in the US, the price of labor (i.e. the salaries expected from these people) will be too high for a public institution to compete against a private one. Consequently, the public institutions will have to hire folks with lower salary expectations (probably as a result of a lack of experience). Therefore, public institutions will likely have more problems with their systems and blame it all on Linux.
This is just one scenario that I have seen played out in the government (or government sponsored) institutions that I've worked at.
(1) If you get any link errors when compiling your new kernel which refer to lock_kernel and unlock_kernel. Just add #include to whatever files generate the complaints.
(2) If you have any SCSI drives that were broken because of the Block IO Layer changes, then this kernel most likely fixes them. Apparently, the "various scsi driver fixes" includes the parallel port zip driver (ppa.c) for any who care:).
EDUNIX is a company based in the United States that attempts to develop technology companies in the caribbean by specifically targetting the country's educational infrastructure. The company uses open-source software to "connect schools to the internet" at a reasonable price. (I am currently working for this company and doing work in Dominican Republic and Cuba, and you should see us online in about a month so remember to check us out).
I know as a computer geek it is often hard to see the value in this. However, it is important to note how important technology is as a factor of long-term economic growth. By targetting schools specifically (and using open-source in general), you are adding to the country's intellectual capital today (educating more people in the methods of doing business in today's economies and thereby making them more "hireable") and also adds to their GDP growth in the long-run (for example, by educating one person who then forms a company that exploits technology to increases worker productivity and icreasing output, etc).
It may not seem like much, but engineers (whether they build dams or software) are key to the development of modern economies (which need to operate efficiently and in large scale with complex structures).
Or maybe I am just a geek with a high opinion of myself.
I meant to add that there are similar projects in the Caribbean. In the Dominican Republic, The Amity Institute has a teaching exchange program that includes teaching posts for computer technology courses. Likewise, the Universidad Autonoma de Santo Domingo, where I worked for a semester, always needs technology instructors. Both of these organizations put geeks up in apartments. (Spanish is required).
You may want to check out GeekCorps. The organization pairs teams of high-tech volunteers with emerging business in developing countries. Currently only operating in Ghana, I am sure they have other projects on the horizon.
On 31 Oct 2001, Michael Peddemors wrote:
>
> Lets' let this testing cycle go a little longer before making any
> changes.. Let developers catch up..
My not-so-cunning plan is actually to try to figure out the big problems
now, then release a reasonable 2.4.14, and then just stop for a while,
refusing to take new features.
Then, 2.4.15 would be the point where I start 2.5.x, and where Alan gets
to do whatever he wants to do with 2.4.x. Including, of course, just
reverting all my and Andrea's VM changes;)
I'm personally convinced that my tree does the right thing VM-wise, but
Alan _will_ be the maintainer, and I'm not going to butt in on his
decisions. The last thing I want to be is a micromanaging pointy-haired
boss.
(2.5.x will obviously use the new VM regardless, and I actually believe
that the new VM simply is better. I think that Alan will see the light
eventually, but at the same time I clearly admit that Alan was right on a
stability front for the last month or two;)
> My own kernel patches I had to stop because I couldn't keep up.... Can
> we go a full month with you just hitting us over the head with a bat
> yelling 'test, dammit, test', until this is tested fully before
> releasing another production release?
I think we're really close.
[ I'd actually like to thank Gary Sandine from laclinux.com who made the
"Ultimate Linux Box" for an article by Eric Raymond for Linux Journal.
They sent me one too, and the 2GB box made it easier to test some real
highmem loads. This has given me additional load environments to test,
and made me able to see some of the problems people reported.. ]
But I do want to make a real 2.4.14, not just another "final" pre-kernel,
and let that be the base for a reasonably orderly switch-over at 2.4.15
(ie I'd still release 2.4.15, everything from then on is Alan).
RedHat 7.2 ships with a modified linux 2.4.7,
so you will not get the AVM (Andrea's VM).
Also RH7.2 kernel still has the local root ptrace vulnerability, so you will need to upgrade to kernel-2.4.9 right away. RPMS are available at the usual places.
First of all, I didn't understand why this "manager" spent most of the time in the article making fun of a geek stereotype. It smelled like propaganda: people who shave and wear suits are great people, geeks stink and wear black which is the color of evil-doers. An engineer's professionalism have nothing to do with his style of dress (non-conformism) or his smell... the latter can be affected by diet which could be affected by nationality, for example, and is hardly a measure of "hirability".
Second of all, it seemed to me like this was a big failure on the part of management. This employee clearly had skills (enough to ace all the questions he was asked). The fact that the engineer kept himself busy doing other programming work speaks to the lack of challenging/interesting work at the company. This is part of a trend in most companies: the complete lack of research and development. I am sure that if this employee were shifted into a more "R&D" role at the company that it would have proven profitable and manageable for the company. Just my 0.02.
The two trees are very different in certain cases, and are likely to stay that way for a while.
The -ac tree has the following major additions:
- Uses the Riel VM (Linus uses AA)
- 32bit uid safe quota
- Ext3 file system
- PnPBIOS support
- Various PPro and Pentium workarounds
- Simple boot flag
- Faster x86 syscall path
- PPPoATM
- Elevator flow control
- DRM 4.0 and 4.1 support not just 4.1
- CMS file system
- Intermezzo file system
- isofs compression
Re:Where do I find more detailed changelogs?
on
Kernel 2.4.11 Released
·
· Score: 4, Informative
There are a few changes to the emu10k1 driver that may affect you:
- Mixer improvements (should add support for treble, bass, volume, and others).
- Fixed a dead lock in emu10k1_volxxx_irqhandler.
- Small code cleanup.
Home Depot is using Red Hat Linux for a huge in-store system that its employees will use for tasks such as receiving, ordering, and inventory management. As many as 90,000 cash registers (etc) are running Linux there. Check out this article for details.
The numbers come from JD Power and Associates -- a top research firm for the automotive industry. The results were summarized in a 2001 article published by USA Today.
I wasn't saying that everyone over the age of 18 is an idiot. My argument goes as follows:
About 50% of all the music is bought by people aged 15-29. And while I don't have the numbers to back this up, I think it is safe to speculate that people in their 30s account for another significant percentage of music sales.
However, most of the car-owning population is in their 40s, and can go as high as 61 (as is the case for Buicks). Therefore, the strongest music buyers are not being targetted by this device.
Add to this the fact that the majority of the MP3 user base is comprised mostly of people aged 15-25. (And before I get yelled at again I AM NOT IN THIS AGE GROUP).
What you have is a device with an extremely small market.
All of the above seemed obvious to me which is why I didn't elaborate.
In the US, for example, 26% of people are between the ages of 18-29 and about 45% of people are over 40. Only about 20% of people are in their thirties.
The average age of car buyers ranges from 38-60,
depending on the make of the car (see here for a cool table). Mostly, the car-buying population is made up of people in their 40s.
My assumption was not that anyone older than 30 can't use an MP3 player; I meant that the percentages of MP3 users that are also car-buyers decreases as age increases. Since the age distribution is stacked towards people in the higher age brackets, the market for this type of product is really small.
So I basically meant that both the price and the product geared the MP3 player towards a market of people aged 40 at the low end; And, in my opinion, meant a pretty small margin.
As the complexity of the Linux kernel increases, what is the kernel community doing to educate the next crop of kernel developers? I know that the "teach yourself" mentality that permeates the open-source community makes this uninteresting in some circles, but are there any free courses that you'd recommend for getting into kernel development? If not, how would you recommend that someone interested in computer science education set about getting something like this up and running? Partnerships with free online universities like Udacity, partnerships with ISPs to provide a configurable development environment, etc... what can we do?
What's even worse is that most of the out of date documents are abandoned, and emails with updates are ignored. I actually wrote updates to the Zip Drive Mini-HOWTO and, after the email to the maintainer bounced, was just ignored by whomever handles the email for TLDP. I don't see why we have to have such a congratulatory piece on slashdot; the headline should have read "After 10 years, TLDP struggles to live up to its name".
There are a few debates raging in linux kernel development these days. I was just interested in hearing IBM's take on a few of these subjects:
:)?
[1] Rik van Riel VM (RMAP) or Andrea Arcangeli VM?
[2] Is a new kernel build system needed for the linux kernel?
[3] Modules/InitRAMFS or regular ol' monolithic kernel?
[4] Which journaling file system does IBM see becoming the de facto journaling file system for Linux? In other words, what's so cool about JFS
I apologize for sneaking in a few too many questions.
If anyone has the Yamaha YMF744B sound chip, then you should apply this little patch to get this card to work with the OSS system:
diff -Nru linux-2.5.12/sound/oss/Config.in linux-2.5.12-hq1/sound/oss/Config.in
--- linux-2.5.12/sound/oss/Config.in Tue Apr 30 20:09:00 2002
+++ linux-2.5.12-hq1/sound/oss/Config.in Wed May 1 12:50:03 2002
@@ -103,6 +103,9 @@
dep_tristate ' VIA 82C686 Audio Codec' CONFIG_SOUND_VIA82CXXX $CONFIG_PCI
dep_mbool ' VIA 82C686 MIDI' CONFIG_MIDI_VIA82CXXX $CONFIG_SOUND_VIA82CXXX
+dep_tristate ' Yamaha YMF7xx PCI audio' CONFIG_SOUND_YMFPCI $CONFIG_PCI
+dep_mbool ' Yamaha PCI legacy ports support' CONFIG_SOUND_YMFPCI_LEGACY $CON
FIG_SOUND_YMFPCI
+
dep_tristate ' OSS sound modules' CONFIG_SOUND_OSS $CONFIG_SOUND
if [ "$CONFIG_SOUND_OSS" = "y" -o "$CONFIG_SOUND_OSS" = "m" ]; then
@@ -164,8 +167,6 @@
dep_tristate ' Yamaha FM synthesizer (YM3812/OPL-3) support' CONFIG_SOUND
_YM3812 $CONFIG_SOUND_OSS
dep_tristate ' Yamaha OPL3-SA1 audio controller' CONFIG_SOUND_OPL3SA1 $CO
NFIG_SOUND_OSS
dep_tristate ' Yamaha OPL3-SA2 and SA3 based PnP cards' CONFIG_SOUND_OPL3
SA2 $CONFIG_SOUND_OSS
- dep_tristate ' Yamaha YMF7xx PCI audio (native mode)' CONFIG_SOUND_YMFPCI
$CONFIG_SOUND_OSS $CONFIG_PCI
- dep_mbool ' Yamaha PCI legacy ports support' CONFIG_SOUND_YMFPCI_LEGACY
$CONFIG_SOUND_YMFPCI
dep_tristate ' 6850 UART support' CONFIG_SOUND_UART6850 $CONFIG_SOUND_OSS
dep_tristate ' Gallant Audio Cards (SC-6000 and SC-6600 based)' CONFIG_SO
UND_AEDSP16 $CONFIG_SOUND_OSS
Folks,
buffer_head is now in its own header file, so in suspend.c, for example, you will need to include
< linux/buffer_head.h >.
Also, to get HFS (Apple filesystem) to compile, you have to include < linux/pagemap.h >
Best of luck...
My apologies...
:)
add
"diff -Nru linux-2.4.5 25"
to the first line of your patch file
The short answer to the question of how to patch a kernel is:
/usr/src/; patch -p0 < /wherever/is/file.patch
/usr/src/ (or whereever your kernel source is)
/usr/src:
/usr/src
/usr/src
cd
However, since people use different conventions for naming their kernel source directory it is usually better to do:
cd
patch -p 1 -d your-dir-2.5 < file.patch
So, for example, if you keep your source in a directory called "linux-2.5" in
# cp file.patch
# cd
# patch -p1 -d linux-2.5 < file.patch
Anyway, hope this helps. If you want to read more on this, you might want to check out www.kernelnewbies.org.
There was a change to the API in this kernel release which breaks a bunch of drivers for the moment. Specifically, all drivers that allocate buffers using the kmalloc/__get_free_pages and virt_to_bus will not link. Right now, I can see atleast two groups of drivers affected: some USB, and the PCI sound drivers.
/* Copy and release all segment info associated with a VM */
/*
Even if you don't see the above problem, this kernel will not compile (atleast on most i386 systems) without the following patch:
--- linux-2.5.4/include/asm-i386/processor.h Sun Feb 10 22:00:29 2002
+++ 25/include/asm-i386/processor.h Sun Feb 10 22:21:53 2002
@@ -435,14 +435,7 @@ extern int kernel_thread(int (*fn)(void
extern void copy_segments(struct task_struct *p, struct mm_struct * mm);
extern void release_segments(struct mm_struct * mm);
-
-/*
- * Return saved PC of a blocked thread.
- */
-static inline unsigned long thread_saved_pc(struct task_struct *tsk)
-{
- return ((unsigned long *)tsk->thread->esp)[3];
-}
+extern unsigned long thread_saved_pc(struct task_struct *tsk);
unsigned long get_wchan(struct task_struct *p);
#define KSTK_EIP(tsk) (((unsigned long *)(4096+(unsigned long)(tsk)->thread_info))[1019])
--- linux-2.5.4/arch/i386/kernel/process.c Sun Feb 10 22:00:28 2002
+++ 25/arch/i386/kernel/process.c Sun Feb 10 22:26:35 2002
@@ -55,6 +55,14 @@ asmlinkage void ret_from_fork(void) __as
int hlt_counter;
+ * Return saved PC of a blocked thread.
+ */
+unsigned long thread_saved_pc(struct task_struct *tsk)
+{
+ return ((unsigned long *)tsk->thread.esp)[3];
+}
+
+/*
* Powermanagement idle function, if any..
*/
void (*pm_idle)(void);
-
-
Folks:
It should be noted that this will lead to a compile error if you enable preemption but disable SMP. To make this build, you need to add this patch:
diff -urN linux-2.5.4-pre6/include/asm-i386/smplock.h linux/include/asm-i386/smplock.h
--- linux-2.5.4-pre6/include/asm-i386/smplock.h Sun Feb 10 15:35:55 2002
+++ linux/include/asm-i386/smplock.h Sun Feb 10 18:15:55 2002
@@ -15,6 +15,7 @@
#else
#ifdef CONFIG_PREEMPT
#define kernel_locked() preempt_get_count()
+#define global_irq_holder 0
#else
#define kernel_locked() 1
#endif
When thinking about netflix, I basically compare it to my other option: Blockbuster.
I've really liked netflix.
One of my biggest concerns regarding the adoption of Linux by the public sector is the availability of human resources. Having worked for several non-profits I can say that it is a lot harder for public institutions (and especially government) to hire the right people because there are always political problems. For example, how many Linux professionals come from areas outside the United States? If the government can only hire US citizens, then it will have to cut out a significant portion of its applicant pool. A pool that even on a world-wide level is not that big. As a result, it will have to step up and compete for a resource like a "Linux Systems Administrator" in the US labor market. Given the short supply of these types of people in the US, the price of labor (i.e. the salaries expected from these people) will be too high for a public institution to compete against a private one. Consequently, the public institutions will have to hire folks with lower salary expectations (probably as a result of a lack of experience). Therefore, public institutions will likely have more problems with their systems and blame it all on Linux.
This is just one scenario that I have seen played out in the government (or government sponsored) institutions that I've worked at.
(1) If you get any link errors when compiling your new kernel which refer to lock_kernel and unlock_kernel. Just add #include to whatever files generate the complaints.
:).
(2) If you have any SCSI drives that were broken because of the Block IO Layer changes, then this kernel most likely fixes them. Apparently, the "various scsi driver fixes" includes the parallel port zip driver (ppa.c) for any who care
EDUNIX is a company based in the United States that attempts to develop technology companies in the caribbean by specifically targetting the country's educational infrastructure. The company uses open-source software to "connect schools to the internet" at a reasonable price. (I am currently working for this company and doing work in Dominican Republic and Cuba, and you should see us online in about a month so remember to check us out).
I know as a computer geek it is often hard to see the value in this. However, it is important to note how important technology is as a factor of long-term economic growth. By targetting schools specifically (and using open-source in general), you are adding to the country's intellectual capital today (educating more people in the methods of doing business in today's economies and thereby making them more "hireable") and also adds to their GDP growth in the long-run (for example, by educating one person who then forms a company that exploits technology to increases worker productivity and icreasing output, etc).
It may not seem like much, but engineers (whether they build dams or software) are key to the development of modern economies (which need to operate efficiently and in large scale with complex structures).
Or maybe I am just a geek with a high opinion of myself.
I apologize to the partial post...
I meant to add that there are similar projects in the Caribbean. In the Dominican Republic, The Amity Institute has a teaching exchange program that includes teaching posts for computer technology courses. Likewise, the Universidad Autonoma de Santo Domingo, where I worked for a semester, always needs technology instructors. Both of these organizations put geeks up in apartments. (Spanish is required).
You may want to check out GeekCorps. The organization pairs teams of high-tech volunteers with emerging business in developing countries. Currently only operating in Ghana, I am sure they have other projects on the horizon.
Linus posted this note to the linux kernel mailing list before the story of Nov. 2, so this should not be seen as a reversal of that story.
:).
Alan is free to do what he wants with the kernel including pass on its maintenance to someone else
From: Linus Torvalds
;)
;)
.... Can
CC: Kernel Mailing List
On 31 Oct 2001, Michael Peddemors wrote:
>
> Lets' let this testing cycle go a little longer before making any
> changes.. Let developers catch up..
My not-so-cunning plan is actually to try to figure out the big problems
now, then release a reasonable 2.4.14, and then just stop for a while,
refusing to take new features.
Then, 2.4.15 would be the point where I start 2.5.x, and where Alan gets
to do whatever he wants to do with 2.4.x. Including, of course, just
reverting all my and Andrea's VM changes
I'm personally convinced that my tree does the right thing VM-wise, but
Alan _will_ be the maintainer, and I'm not going to butt in on his
decisions. The last thing I want to be is a micromanaging pointy-haired
boss.
(2.5.x will obviously use the new VM regardless, and I actually believe
that the new VM simply is better. I think that Alan will see the light
eventually, but at the same time I clearly admit that Alan was right on a
stability front for the last month or two
> My own kernel patches I had to stop because I couldn't keep up
> we go a full month with you just hitting us over the head with a bat
> yelling 'test, dammit, test', until this is tested fully before
> releasing another production release?
I think we're really close.
[ I'd actually like to thank Gary Sandine from laclinux.com who made the
"Ultimate Linux Box" for an article by Eric Raymond for Linux Journal.
They sent me one too, and the 2GB box made it easier to test some real
highmem loads. This has given me additional load environments to test,
and made me able to see some of the problems people reported.. ]
But I do want to make a real 2.4.14, not just another "final" pre-kernel,
and let that be the base for a reasonably orderly switch-over at 2.4.15
(ie I'd still release 2.4.15, everything from then on is Alan).
Linus
Just a note...
RedHat 7.2 ships with a modified linux 2.4.7,
so you will not get the AVM (Andrea's VM).
Also RH7.2 kernel still has the local root ptrace vulnerability, so you will need to upgrade to kernel-2.4.9 right away. RPMS are available at the usual places.
Then you can feel good...
First of all, I didn't understand why this "manager" spent most of the time in the article making fun of a geek stereotype. It smelled like propaganda: people who shave and wear suits are great people, geeks stink and wear black which is the color of evil-doers. An engineer's professionalism have nothing to do with his style of dress (non-conformism) or his smell... the latter can be affected by diet which could be affected by nationality, for example, and is hardly a measure of "hirability".
Second of all, it seemed to me like this was a big failure on the part of management. This employee clearly had skills (enough to ace all the questions he was asked). The fact that the engineer kept himself busy doing other programming work speaks to the lack of challenging/interesting work at the company. This is part of a trend in most companies: the complete lack of research and development. I am sure that if this employee were shifted into a more "R&D" role at the company that it would have proven profitable and manageable for the company. Just my 0.02.
The two trees are very different in certain cases, and are likely to stay that way for a while.
The -ac tree has the following major additions:
- Uses the Riel VM (Linus uses AA)
- 32bit uid safe quota
- Ext3 file system
- PnPBIOS support
- Various PPro and Pentium workarounds
- Simple boot flag
- Faster x86 syscall path
- PPPoATM
- Elevator flow control
- DRM 4.0 and 4.1 support not just 4.1
- CMS file system
- Intermezzo file system
- isofs compression
There are a few changes to the emu10k1 driver that may affect you:
- Mixer improvements (should add support for treble, bass, volume, and others).
- Fixed a dead lock in emu10k1_volxxx_irqhandler.
- Small code cleanup.
Home Depot is using Red Hat Linux for a huge in-store system that its employees will use for tasks such as receiving, ordering, and inventory management. As many as 90,000 cash registers (etc) are running Linux there. Check out this article for details.
The numbers come from JD Power and Associates -- a top research firm for the automotive industry. The results were summarized in a 2001 article published by USA Today.
I wasn't saying that everyone over the age of 18 is an idiot. My argument goes as follows:
About 50% of all the music is bought by people aged 15-29. And while I don't have the numbers to back this up, I think it is safe to speculate that people in their 30s account for another significant percentage of music sales.
However, most of the car-owning population is in their 40s, and can go as high as 61 (as is the case for Buicks). Therefore, the strongest music buyers are not being targetted by this device.
Add to this the fact that the majority of the MP3 user base is comprised mostly of people aged 15-25. (And before I get yelled at again I AM NOT IN THIS AGE GROUP).
What you have is a device with an extremely small market.
All of the above seemed obvious to me which is why I didn't elaborate.
I didn't mean to be agist.
In the US, for example, 26% of people are between the ages of 18-29 and about 45% of people are over 40. Only about 20% of people are in their thirties.
The average age of car buyers ranges from 38-60,
depending on the make of the car (see here for a cool table). Mostly, the car-buying population is made up of people in their 40s.
My assumption was not that anyone older than 30 can't use an MP3 player; I meant that the percentages of MP3 users that are also car-buyers decreases as age increases. Since the age distribution is stacked towards people in the higher age brackets, the market for this type of product is really small.
So I basically meant that both the price and the product geared the MP3 player towards a market of people aged 40 at the low end; And, in my opinion, meant a pretty small margin.