Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - nslay

Pages: 1 ... 49 50 [51] 52
751
Unix / Linux Discussion / Re: Enabling hostapd at runtime (FreeBSD 6.0)
« on: August 18, 2006, 08:47:52 am »
It was a fresh install from the 6.0 CD ISOs.

give me the output from 'uname -a'
You should always build world on new installs.
Be sure you cvsup the new system sources.
build world builds all the system utilities (specified by /etc/make.con).
mergemaster merges new scripts and config files with existing one.
BTW, Here is the hostapd rc file:
Quote
%cat /etc/rc.d/hostapd
#!/bin/sh
#
# $FreeBSD: src/etc/rc.d/hostapd,v 1.1.2.1 2006/02/12 22:13:15 flz Exp $
#

# PROVIDE: hostapd
# REQUIRE: mountcritremote
# KEYWORD: nojail shutdown

. /etc/rc.subr

name="hostapd"
command="/usr/sbin/${name}"
rcvar=`set_rcvar`

conf_file="/etc/${name}.conf"

command_args="-B ${conf_file}"
required_files="${conf_file}"

load_rc_config ${name}
run_rc_command "$1"

Copy and paste into specified file and then 'hostapd_enable="YES"' will work.
So will /etc/rc.d/hostapd onestart

752
Unix / Linux Discussion / Re: Enabling hostapd at runtime (FreeBSD 6.0)
« on: August 17, 2006, 11:40:01 pm »
Quote
newby@zombie:~$ ls /etc/rc.d/hostapd
ls: /etc/rc.d/hostapd: No such file or directory
newby@zombie:~$

It does not exist. I am running FreeBSD 6.0.

hostapd_enable="YES" does not work either. :/

Quote
newby@zombie:~$ ls -l /etc/hostapd.conf
-rw-r--r--  1 root  wheel  299 Aug 17 18:17 /etc/hostapd.conf

It should exist.  Did you update the system sources for 6.0 and makeworld and then mergemaster?

753
Unix / Linux Discussion / Re: Enabling hostapd at runtime (FreeBSD 6.0)
« on: August 17, 2006, 10:10:14 pm »
I have found no way other than to write my own damn script and boot it. Suggestions?

/etc/rc.d/hostapd onestart

or add to rc.conf
hostapd_enable="YES"

You will need to make a /etc/hostapd.conf

754
Unix / Linux Discussion / Re: dunno much about linux
« on: August 17, 2006, 06:12:27 am »
I don't know what you're talking about, socket programming is extremely easy, and so is the error handling.  The man pages make error handling very clear cut.  If MSDN documentation was thorough, then you would not need to worry about handling errors properly.
It's definitely easy now that I understand it.  But what defines "thorough"?  To me, that sounds like an arbitrary measurement for the sake of the argument.  What I might consider thorough, someone with absolutely no experience might say "WtfIdungetitwritemecode."  Of course, I tend to think now that socket programming is more a self-explanatory thing, and I'm not saying that this is an excuse for non-documentation.
Okay, I made a comparison between BSD's socket man page and MSDN's socket page and they both seem to follow the same "thorough" style.
That is:
1) A synopsis
2) A description
3) Return values
4) Error codes
5) External references

Although in my past experience I've had a bad time with MSDN.

EDIT: We could argue BSD's socket man page is more descriptive and informative than MSDN's :)

Quote
It may not have market share, but that does not negate its ability as a workstation, server, or embedded OS.
That is a fallacious argument.

EDIT:  Unix is historically, and still is, extremely portable.  That's why it still exists today.
I didn't once disagree that it's extremely portable.  My question was - if it's free and provides all the functionality of Windows, which is what you'd stated, why hasn't it taken more desktop market?  If it really is as good as you say it is, you'd think that more people would use it.

The thing is, it doesn't provide all the functionality of Windows, because if it did, it wouldn't have such a learning curve.

Market share and learning curve have nothing to do with its functionality.  You seem correlate the two that:
Small Unix market share => Unix isn't very functional
Thats a fallacy!

Can Unix be made into a reliable desktop? YES.  Many people use it as a desktop everyday, especially academia.
Can a desktop Unix do taxes, reports and just about anything work related under the sun? YES.  FreeBSD is the less popular of popular Unixes and it has 15000 ports available ... I've had very little trouble finding software that does what I need.
Does it play games?  NO
Can Unix be made into a reliable server? YES.  Thats why Google(Linux), Yahoo(FreeBSD), Qwest(FreeBSD and Linux) and so forth use it.  Check netcraft.
Can Unix be used as an embedded OS? YES  If you're using a DI-624M, WRT54G, Tivo, etc, then you're using a device that runs Linux.

Does it have a learning curve? YES  Does that mean it doesn't have most of the functionality most people want? NO.

Does it have more functionality than a single version of Windows...I'd argue that it does.  It can be setup to do anything without licensing or worries of the OS version.  There is no Unix Server, Unix Advanced Server, Unix Home Edition, Unix Professional, Unix Web Server etc...

Quote
Ever heard of dumping core?  The Unix-Haters handbook loves to poke fun of it.  Applications who misbehave dump core and terminated.  Then a debugger can be used to study the core file.
I wasn't saying that Unix doesn't have it.  I was simply saying that you were wrong - it is NOT a painful process to track down problems in Windows.
Maybe for software crashes, but I've had times where problems were extremely hard to diagnose.
For example, back in the Windows 2000 days, before even Code Red, I had this german guy break in (through IIS) to a Windows 2000 Adv Server machine and delete the windows shell registry key.  I have no clue how you would diagnose that without special knowledge of the registry or Windows shell.  Skywing ended up telling me that was the problem. 
If something like that happened in X with a window manager, the X documentation explains how X works, what initialization scripts it invokes and so forth.

Quote
Yes, but these settings are not always available by the driver.  Skywing had to write a driver to throttle his computer's speed because the ACPI driver offered no such functionality.  He needed this because his computer would often overheat.  On the other hand, these settings in Unix (more specifically BSD and Linux) are universally available.
As dumb as I think that is (you have problems with the way your computer is built physically if your processor overheats at 100% of rated maximum), it'll be supported in Windows Vista.  That's not an excuse in and of itself, but things *are* coming around in that regard.
Right, but for now, sysctl (thats the output I quoted) interface is way more powerful than what Windows drivers offer.  It lets you adjust most kernel and hardware features.
I dumped everything in sysctl:
EDIT: sysctl.txt
Pretty extensive huh?  Much of it can be modified, the rest is read-only.

Quote
I sure do, although I think you could learn a great deal more from Unix.
I'm sure.  I think it could learn a lot from me too.   ;)
Big talk for someone largely unfamiliar with Unix ;)

755
Unix / Linux Discussion / Re: dunno much about linux
« on: August 16, 2006, 03:00:19 am »
That's no excuse.  If you don't know what a socket is in Unix or how they work, you can easily 'man net' or 'man netintro' that explains the network routines.  Documentation is meant to be thorogh.  If you didn't understand something MSDN was saying and it offered no explanation for a concept, then it wasn't thorogh enough.

Speaking of sockets, but I've heard Yoni comment that MSDN does not explain very well how to do proper socket programming and that Skywing had taught him.

man net
I disagree; I think it *is* a valid excuse.  Socket programming in .NET was also something that I struggled with, and in fact I still try to avoid it as much as possible because I sometimes worry that I don't have the error handling correct or something (network I/O, as opposed to file I/O, is a time-specific operation, and sometimes you have to wait and poll for data; it's not that I don't know how to use the API, but I sometimes feel that my handling of these kinds of operational program structures is just off.  (Of course, others have felt the same way, which is why polling is now "out" in favor of I/O completion ports).
I don't know what you're talking about, socket programming is extremely easy, and so is the error handling.  The man pages make error handling very clear cut.  If MSDN documentation was thorough, then you would not need to worry about handling errors properly.

Quote
It looks like Microsoft is starting to get it ... however, you're still bound to buying different versions of Windows for diferent functionality.  I don't thik Windows is very portable and its obvious that it demands a lot from hardware to run.  Unix is very portable, NetBSD alone exists for dozens upon dozens of platforms, and it provides all the functionality that you need Windows * version to do. 
Well, then - I hate to sound repetitive - but, if it provides all of the functionality that Windows provides, and that users need, why isn't NetBSD taking market?  Platform independence is over-emphasized, and it sounds special, but NetBSD really isn't platform-independent, and - let's be honest - the only thing that Microsoft would need to do to move platforms is provide a new HAL and maybe tweak the kernel according to the memory management demands of the system.
It may not have market share, but that does not negate its ability as a workstation, server, or embedded OS.
That is a fallacious argument.

EDIT:  Unix is historically, and still is, extremely portable.  That's why it still exists today.

Quote
A command interpretor is known as a shell.  I'm glad they adopted the terminal/shell concept.
Microsoft has supported the "shell concept" since MS-DOS.  I used the Norton Utilities 6.0 command shell as my environment in MS-DOS 6.0.  I never loaded command.com.

MS-DOS is not a shell.
A shell is any independent program that interfaces human input/output to/from the system.
A terminal is a piece of hardware or software in which a shell is invoked. The terminal displays output from the shell and forwards input to the shell.
Is there an MS-DOS shell that Command Prompt invokes separately?  As far as I know, Command Prompt is not a terminal or a shell.

Examples of terminal/shell model:
xterm with bash
aterm with csh
eterm with ksh
aterm with bash
xterm with csh
...

Quote
Because of the all-mechanism-no-policy nature of Unix, Unix doesn't force the use of a GUI environment nor does it even have a GUI.  Your question about tablet machines really depends on what Xorg or XFree86 can do.  That said, I would be really surprised if some X API didn't exist for touch screens.  Furthermore, I would be surprised if some applications that use this API didn't exist.
What I can tell you for sure is that there is no Window Manager or Desktop Environment that I know of that allows control with a stylus that I know of ... maybe Gnome or KDE. 
One solution would be to write a daemon that interfaces with X and acts like, say, moused.
Like I said, I realize that I'm sure there's something out there that mimics some tablet functionality.  But I guess what I'm saying is - okay, tablets are a cool thing.  Windows has supported them for 3 years (or more).  Since Linux has no "policy," it doesn't define a way for me to expect it to work across distributions, etc.  And I know I couldn't expect to write something like that on my own, at least, not nearly as robust as the Windows implementation.

Don't think of Unix as solely a set of distributions.  That is unique to Linux.
Linux is a kernel by itself.  A Linux distribution bundles commonly preferred software by a group, the GNU userland, and the Linux kernel.  On the other hand, all other Unixes, AIX, BSD, IRIX and so forth are true operating systems.  They include their own kernel and their own tools.

Quote
It's a minor point that I'm sure could be argued across platforms, but it was an example on my mind.
You shouldn't need a kernel debugger to diagnose problems.  One thing I wish Windows had was a console where the kernel could print errors ... Windows has no such thing.  The event logger is not verbose or detailed enough.  The boot log is okay.
I'm sorry, I misspoke because the kernel debugger is the same application as, for instance, the crash dump analysis application.
Code: [Select]
0: kd> !analyze -v
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

IRQL_NOT_LESS_OR_EQUAL (a)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high.  This is usually
caused by drivers using improper addresses.
If a kernel debugger is available get the stack backtrace.
Arguments:
Arg1: 00000066, memory referenced
Arg2: 000000ff, IRQL
Arg3: 00000000, value 0 = read operation, 1 = write operation
Arg4: 804e5deb, address which referenced memory

Debugging Details:
------------------
FAULTING_MODULE: 804d7000 nt

DEBUG_FLR_IMAGE_TIMESTAMP:  433d2dd2

READ_ADDRESS: unable to get nt!MmSpecialPoolStart
unable to get nt!MmSpecialPoolEnd
unable to get nt!MmPoolCodeStart
unable to get nt!MmPoolCodeEnd
 00000066

CURRENT_IRQL:  ff

FAULTING_IP:
nt!KeReadStateEvent+56
804e5deb 66394616        cmp     word ptr [esi+16h],ax

DEFAULT_BUCKET_ID:  WRONG_SYMBOLS

BUGCHECK_STR:  0xA

LAST_CONTROL_TRANSFER:  from 804e5deb to 804e0aac

STACK_TEXT: 
WARNING: Stack unwind information not available. Following frames may be wrong.
b4cda8c0 804e5deb badb0d00 00000000 b4cda910 nt!Kei386EoiHelper+0x2883
b4cda940 804ecdf2 b4cdac98 00000000 00000000 nt!KeReadStateEvent+0x56
b4cda99c 804ecd6a 88b0c528 b4cda9e8 b4cda9dc nt!IoGetBaseFileSystemDeviceObject+0x779
b4cda9ec 804dc819 00000000 00000000 00000000 nt!IoGetBaseFileSystemDeviceObject+0x6f1
b4cdaa0c 804e84ec 00000103 89a6e008 f76dc64f nt!ExReleaseResourceLite+0x280
b4cdaa18 f76dc64f 89a6e1a8 b4cdaa54 8a302470 nt!KeResetEvent+0x1f
b4cdaa2c bae49985 89a6e1a4 887b4b38 00000082 VMNetSrv+0x564f
00000000 00000000 00000000 00000000 00000000 NDIS!NdisDprFreePacketNonInterlocked+0x1b0


STACK_COMMAND:  kb

FOLLOWUP_IP:
VMNetSrv+564f
f76dc64f 015d4c          add     dword ptr [ebp+4Ch],ebx

SYMBOL_STACK_INDEX:  6

SYMBOL_NAME:  VMNetSrv+564f

FOLLOWUP_NAME:  MachineOwner

MODULE_NAME: VMNetSrv

IMAGE_NAME:  VMNetSrv.sys

BUCKET_ID:  WRONG_SYMBOLS

Followup: MachineOwner
---------
The above is the WinDbg analysis of the memory.dmp file I generated by typing "!analyze -v" once the dump file was loaded (I removed the "wrong symbols" notices because I don't have the symbols installed).  The bugcheck was initiated when I installed a Linksys Wireless-N network card driver.  We can see from the stack trace analysis that the problem initiated in an NDIS call and was apparently faulting in a VMNetSrv.sys.  At the very least this tells us that a network device was faulting - they usually don't just break.  Of course I knew that I had just installed the faulting device.

Ever heard of dumping core?  The Unix-Haters handbook loves to poke fun of it.  Applications who misbehave dump core and terminated.  Then a debugger can be used to study the core file.

Quote
Thats only a fraction of what you can do with md.  Regardless, you can't do things like update or view hardware parameters.

To demonstrate just one among things I can do with ACPI:
Quote
dev.acpi_ibm.0.%desc: IBM ThinkPad ACPI Extras
dev.acpi_ibm.0.%driver: acpi_ibm
dev.acpi_ibm.0.%location: handle=\_SB_.PCI0.LPC_.EC__.HKEY
dev.acpi_ibm.0.%pnpinfo: _HID=IBM0068 _UID=0
dev.acpi_ibm.0.%parent: acpi0
dev.acpi_ibm.0.initialmask: 2060
dev.acpi_ibm.0.availmask: 16777215
dev.acpi_ibm.0.events: 0
dev.acpi_ibm.0.eventmask: 2060
dev.acpi_ibm.0.hotkey: 3487
dev.acpi_ibm.0.lcd_brightness: 7
dev.acpi_ibm.0.volume: 14
dev.acpi_ibm.0.mute: 0
dev.acpi_ibm.0.thinklight: 0
dev.acpi_ibm.0.bluetooth: 0
dev.acpi_ibm.0.wlan: 1
dev.acpi_ibm.0.fan_speed: 4025
dev.acpi_ibm.0.fan: 1
dev.acpi_ibm.0.thermal: 46 43 34 48 33 -1 23 -1

Many of these, like 'thinklight', 'volume' and so forth can be modified.
You do not get this kind of flexability in Windows at all.  This is a trivial demonstration, you can do other things like define the max UDP packet size, adjust caching, tune file systems and much much much more.

NOTE: The mask mibs are for devd...devd is a daemon that reacts to hardware events ... it is scriptable, very flexible indeed.


That's just an example.  Low-level hardware access *is* available in Windows, too.  You just need to write a driver.
Yes, but these settings are not always available by the driver.  Skywing had to write a driver to throttle his computer's speed because the ACPI driver offered no such functionality.  He needed this because his computer would often overheat.  On the other hand, these settings in Unix (more specifically BSD and Linux) are universally available.

Quote
In the Linux world, most things come precompiled, although, in BSD you do have to often compile your applications.  You can do everything on Unix that you can do on Windows minus gaming, that includes taxes, writing reports and so forth.  Very rarily do you have to hack the OS source or drivers and friends.
Yeah, I know.  I was making a hidden implication that software like OpenOffice just can't compete with Microsoft Office, for instance.
To be frank, OpenOffice sucks but to be fair, Microsoft Office is quite an old project.  Microsoft has been developing this office suite for a decade (?).  I can remember Office versions that were bloated and slow too.  OpenOffice on the other hand is a very young project.

Quote
A power user is any user who can use, and usually requires, special and sophisticated features ... usually they are users who are curious about how things work underneath.  They are making a transition between using software to writing software.
So, do you consider me a "power user"?  I read books like Windows Internals for shits and giggles (it's actually really cool, and I hope projects like ReactOS are using design principles from it), and I write software.  Or is it that I'm not a programmer because I only write Windows software?
I sure do, although I think you could learn a great deal more from Unix.

Quote
The device driver I wrote was for a course ... of course I don't normally write drivers, its extremely difficult.  But I would like to bring to your attention that for our last project we had to write a device driver for real hardware, many had trouble finding hardware, new and old, for this project because there are already so many device drivers available.  As much as I dislike Linux...Linux supports thousands if not hundreds of devices.
In my assembly language course, which I *hated*, we had to interface with the SDK-86, which is basically a rudimentary hardware debugger and numeric keypad for the 8086.  They were horrid days!  (At least debugging the 80186 let us use a connected terminal running a debugger... ugh). 

Incidentally, I probably could have sent you hardware that Linux doesn't play nice with.  :P  You should have done work on Winmodems or something!  Just think of the headaches you would have saved.

Haha, I've talked to a grey beard about winmodems.  Do you know what a winmodem is?  It's essentially a piece of hardware that gives the OS direct access to the phone line.  Basically, when you buy a winmodem, you're buying a piece of metal that does absolutely nothing, or a small subset of what a real modem does.  Not only that, but winmodem device drivers are modem specific ... it's even so bad as being revision specific sometimes.  Very little to no code can be recycled between winmodem drivers.  I had contemplated writing a winmodem device driver, but after talking to this guy, now I know why nobody else bothers.  There is a Linux effort to support winmodems, but I think its pointless.  It's better to buy a real modem, preferrably serial or USB.

756
Unix / Linux Discussion / Re: dunno much about linux
« on: August 15, 2006, 09:44:44 pm »
Allow me to explain:
a) Openness
I cannot stress this enough, but it is an extremely valuable to have the source for an OS and its userland.  When porting wmwlmon I had to examine ifconfig's inner workings to find an undocumented ioctl.  When writing a device driver for Linux, I would have to examine code in the kernel many times since the documentation lacked.  Mark Russinovich didn't earn the title of "Technical Fellow" for nothing ... he is an expert on Windows internals, even those undocumented features ...certainly not a feat the average or competent user could accomplish. 

http://ddj.com/dept/cpp/190500794?cid=RSSfeed_DDJ_Cpp

I'm familiar with Mark Russinovich - in fact, I was very impressed with his books.  That's why it does not surprise me that Sysinternals was absorbed into Microsoft.  And I don't disagree that it's handy to have source code occasionally (I've found myself cracking open the .NET decompiler more than once to try to understand the inner workings of the class library).  So I don't disagree on this point, although your later point that MSDN and the DDK are inadequate - I would disagree.  Very rarely has MSDN been opaque to me, and I've almost always found that it's not MSDN's fault, but because I'm not understanding some kind of concept.


Here is an example of why MSDN library is inadequate
Quote
but because I'm not understanding some kind of concept.

That's no excuse.  If you don't know what a socket is in Unix or how they work, you can easily 'man net' or 'man netintro' that explains the network routines.  Documentation is meant to be thorogh.  If you didn't understand something MSDN was saying and it offered no explanation for a concept, then it wasn't thorogh enough.

Speaking of sockets, but I've heard Yoni comment that MSDN does not explain very well how to do proper socket programming and that Skywing had taught him.

man net

Quote
b) Customizability
I shouldn't have to explain this, but you can use Unix for anything under the sun.  It could be a desktop, a server, an OS for an embedded device, its highly portable and has a diversity of applications for all types of things.  You don't have to have a GUI, you could use csh instead of bash, aterm instead of xterm, KDE instead of Window Maker, pf instead of ipf, it can run on your D-Link or Linksys router...or your calculator, telephone or PDA.  It can be your tivo.  You can even make your very own kernels suited to your system.
I could say all of these are true for Windows.  I've used Windows workstation editions, server editions, I have a PocketPC with Windows Mobile 2003, and I've got a friend who has a Windows SmartPhone.  I also use Windows Media Center Edition, since you mentioned Tivo.  I can use the Monad shell instead of the command prompt - hell, I can even write my own command interpreter if I wanted to, since the console subsystem is very accessible - or I can use bbLean instead of Windows Explorer.  I know Microsoft makes routers that run Windows.  The only thing I can't do is make my very own kernel - and Microsoft does have programs for partners who need it, although I can't think of a single situation where *I* personally would need it.  And even then, people have figured out how to hack the Windows Preinstallation Environment to be able to boot Windows live from a CD.

It looks like Microsoft is starting to get it ... however, you're still bound to buying different versions of Windows for diferent functionality.  I don't thik Windows is very portable and its obvious that it demands a lot from hardware to run.  Unix is very portable, NetBSD alone exists for dozens upon dozens of platforms, and it provides all the functionality that you need Windows * version to do. 
A command interpretor is known as a shell.  I'm glad they adopted the terminal/shell concept.
You wouldn't need a specific windows kernel because it is a true microkernel.  Most Unixes use a monolithic kernel (minus say Mach...thats Microkernel).  Although, I believe you gain a subtle performance gain by compiling certain drivers into the kernel.  Ability to compile a kernel also gives you control over kernel specific features such as SMP, preemption, IPv6 support and a variety of other features.

Quote
Then let me ask you about tablet PC functionality.  For my next notebook, I'm planning on getting a tablet.  Does Linux have a unified API that works across Linux distributions for software input?  Is the Linux API for getting drawing notes on a PDA the same as a tablet PC?  (I really don't know the answer to these questions; I've never heard of a Linux API for tablets, nor have I ever heard of a PDA running Linux, but it wouldn't surprise me if they existed.  The kicker is, I know that the Windows environments work the same, and I've never programmed for, for instance, ink technology).

Because of the all-mechanism-no-policy nature of Unix, Unix doesn't force the use of a GUI environment nor does it even have a GUI.  Your question about tablet machines really depends on what Xorg or XFree86 can do.  That said, I would be really surprised if some X API didn't exist for touch screens.  Furthermore, I would be surprised if some applications that use this API didn't exist.
What I can tell you for sure is that there is no Window Manager or Desktop Environment that I know of that allows control with a stylus that I know of ... maybe Gnome or KDE. 
One solution would be to write a daemon that interfaces with X and acts like, say, moused.

Quote
The drawback to this is - yes, you have to be licensed to do this stuff, whereas Linux is free.  That's why education is important.  You want to be able to plan ahead for the right software.  Of course, most Windows administrators know that if you are going to need Terminal Services, then you don't get Windows Server Web Edition.

Even though Linux is free, companies still have to hire admins ... the cost is probably the same.

Quote
c) Verbosity and diagnostics
The entire boot process is a diagnostic!  You have a variety of system logs sitting in /var/log, one for general messages, one for security, one for firewall, one for X, one for mail, one for printing and etc...  The Event logger in Windows is dirty joke if I ever heard one.  It's usually easy to know whats wrong when something goes wrong.
Well, if you're only using the event logger, then I'm going to go ahead and question your claimed knowledge of Windows.  Between the event logger, boot logging, and the kernel debugger, I've only ever had one problem figuring out how to repair a Windows machine, and that was when a renegade software application (Dell MediaDirect) overwrote something in his partition table and it was causing Plug-and-Play errors in the HAL. 

You shouldn't need a kernel debugger to diagnose problems.  One thing I wish Windows had was a console where the kernel could print errors ... Windows has no such thing.  The event logger is not verbose or detailed enough.  The boot log is okay.

Quote
d) Flexibility
I cannot stress this enough, but there is so much power at your disposal in Unix.  You can do everything from mounting files as though they were disks or CDs/DVDs to having your computer run at slower or faster speeds (MHz).  You have a lot of command over hardware, a lot more than you do in Windows, and quite a bit of power over the OS.
I've been mounting files as though they were disks for about 10 months now (and don't even get me started on ISOs, which have been going for much longer).  Windows Vista is going to give me more granular control over the clock speed of my computer, although I've always been able to set that through my BIOS - and Windows is smart enough to know to throttle my mobile PCs when they're running on batteries.

Thats only a fraction of what you can do with md.  Regardless, you can't do things like update or view hardware parameters.

To demonstrate just one among things I can do with ACPI:
Quote
dev.acpi_ibm.0.%desc: IBM ThinkPad ACPI Extras
dev.acpi_ibm.0.%driver: acpi_ibm
dev.acpi_ibm.0.%location: handle=\_SB_.PCI0.LPC_.EC__.HKEY
dev.acpi_ibm.0.%pnpinfo: _HID=IBM0068 _UID=0
dev.acpi_ibm.0.%parent: acpi0
dev.acpi_ibm.0.initialmask: 2060
dev.acpi_ibm.0.availmask: 16777215
dev.acpi_ibm.0.events: 0
dev.acpi_ibm.0.eventmask: 2060
dev.acpi_ibm.0.hotkey: 3487
dev.acpi_ibm.0.lcd_brightness: 7
dev.acpi_ibm.0.volume: 14
dev.acpi_ibm.0.mute: 0
dev.acpi_ibm.0.thinklight: 0
dev.acpi_ibm.0.bluetooth: 0
dev.acpi_ibm.0.wlan: 1
dev.acpi_ibm.0.fan_speed: 4025
dev.acpi_ibm.0.fan: 1
dev.acpi_ibm.0.thermal: 46 43 34 48 33 -1 23 -1

Many of these, like 'thinklight', 'volume' and so forth can be modified.
You do not get this kind of flexability in Windows at all.  This is a trivial demonstration, you can do other things like define the max UDP packet size, adjust caching, tune file systems and much much much more.

NOTE: The mask mibs are for devd...devd is a daemon that reacts to hardware events ... it is scriptable, very flexible indeed.

Quote
So, I would agree that Windows is inadequate for power users ... you have no room to expand, less possibility, less power, less functionality.  Use a Unix system for a few months (no dual booting Windows) and I am almost positive it will open up your mind. 
That would be a great experiment, but what you'd be asking me to do would be to give up doing anything useful, fun, or otherwise interesting to me for several months.

I consider things like writing device drivers, while very educational and a skill I'd like to have, to be at least one level removed from the real reason about why I'm using my computer.  If I'm using the computer to write the device driver - because I'm a hardware or software vendor who needs kernel access - then fine.  But if I need to write a report, or do my taxes, or hell, even get onto World of Warcraft to go to a guild meeting, I don't want to have to spend the time making OpenOffice, or recompiling that kernel driver that just caused a panic, or hacking through my (or, I should say, someone else's) source code to add the feature that Microsoft Word has had for ten years.  All of these things are one level removed - or more - from me doing what I actually *want* to do with my computer.

What is your definition of a "power user," nslay?  Is it someone who makes device drivers?  Why not just call yourself a device driver engineer?  I've got better things to do with my time than try to make my hardware work.

In the Linux world, most things come precompiled, although, in BSD you do have to often compile your applications.  You can do everything on Unix that you can do on Windows minus gaming, that includes taxes, writing reports and so forth.  Very rarily do you have to hack the OS source or drivers and friends.
A power user is any user who can use, and usually requires, special and sophisticated features ... usually they are users who are curious about how things work underneath.  They are making a transition between using software to writing software.

The device driver I wrote was for a course ... of course I don't normally write drivers, its extremely difficult.  But I would like to bring to your attention that for our last project we had to write a device driver for real hardware, many had trouble finding hardware, new and old, for this project because there are already so many device drivers available.  As much as I dislike Linux...Linux supports thousands if not hundreds of devices.

See also:
http://www.freebsdsoftware.org/
http://www.freshports.org/
http://www.freshmeat.net/

EDIT: Sorry, its freshmeat.net

757
Unix / Linux Discussion / Re: dunno much about linux
« on: August 15, 2006, 10:50:12 am »
While I don't disagree with your ma-and-pa 150 million argument, to say that Windows is inadequate for the power user (like myself) is patently absurd, and like it or not, that's what you're doing (you're implying that Windows is sufficient for the average user, but for people in the "elite", which includes yourself, it's not good enough).

Well, considering I've been using Microsoft products since MS-DOS and Win 3.1,  including all major betas and just about every Microsoft software under the sun since then (My father has a MSDN subscription), I must say that moving to BSD two years ago, I've bloomed from a Windows power user into an actual programmer of sorts.  I've written everything from bots, to device drivers all the way to VLANs ... I've even ported several Linux and one OpenBSD Window Maker dockapps to FreeBSD.  There is much more possibility on a Unix system, much more I can learn from, much more I can explore than I could on Windows.  I never saw these possibilities in Windows.  And I must say, in my opinion and experience, documentation in Windows is of less quality...I've often felt this way about the MSDN library.  Although, not to mention, but I've found Linux documentation equally awful ... especially the ALSA documentation (I wrote a MIDI Engine device driver for Linux), thats beside the point.

Windows lacks these:
a) Openness
b) Customizability (yes, I have bad feelings about too much mechanism but it has advantages)
c) Verbosity and diagnostics
d) Flexibility

Allow me to explain:
a) Openness
I cannot stress this enough, but it is an extremely valuable to have the source for an OS and its userland.  When porting wmwlmon I had to examine ifconfig's inner workings to find an undocumented ioctl.  When writing a device driver for Linux, I would have to examine code in the kernel many times since the documentation lacked.  Mark Russinovich didn't earn the title of "Technical Fellow" for nothing ... he is an expert on Windows internals, even those undocumented features ...certainly not a feat the average or competent user could accomplish. 

http://ddj.com/dept/cpp/190500794?cid=RSSfeed_DDJ_Cpp

b) Customizability
I shouldn't have to explain this, but you can use Unix for anything under the sun.  It could be a desktop, a server, an OS for an embedded device, its highly portable and has a diversity of applications for all types of things.  You don't have to have a GUI, you could use csh instead of bash, aterm instead of xterm, KDE instead of Window Maker, pf instead of ipf, it can run on your D-Link or Linksys router...or your calculator, telephone or PDA.  It can be your tivo.  You can even make your very own kernels suited to your system.

c) Verbosity and diagnostics
The entire boot process is a diagnostic!  You have a variety of system logs sitting in /var/log, one for general messages, one for security, one for firewall, one for X, one for mail, one for printing and etc...  The Event logger in Windows is dirty joke if I ever heard one.  It's usually easy to know whats wrong when something goes wrong.

d) Flexibility
I cannot stress this enough, but there is so much power at your disposal in Unix.  You can do everything from mounting files as though they were disks or CDs/DVDs to having your computer run at slower or faster speeds (MHz).  You have a lot of command over hardware, a lot more than you do in Windows, and quite a bit of power over the OS.

So, I would agree that Windows is inadequate for power users ... you have no room to expand, less possibility, less power, less functionality.  Use a Unix system for a few months (no dual booting Windows) and I am almost positive it will open up your mind. 

758
New Project Announcements / Re: P2P VLAN
« on: August 15, 2006, 01:22:38 am »
Couldn't you implement AES above TCP and have the same effect as under it? I suppose you still have to pass the key, though..
No, because each peer is responsible for routing packets.
In the experiment above:
BOTTLE <-> LIGHTBULB <-> BLENDER

If we assume there is encryption between BOTTLE and LIGHTBULB and LIGHTBULB and BLENDER, what happens if BOTTLE wants to communicate with BLENDER?  BOTTLE sends encrypted packets to LIGHTBULB, LIGHTBULB decrypts the packets and then encrypts them to send to BLENDER.  Now, note that LIGHTBULB is still able to read the packet addressed to BLENDER.  What needs to be done is encrypt packets with a key only BLENDER and BOTTLE know so that LIGHTBULB can't read routed packets. The higher level encryption isn't enough, although it will be used along with the above method.
Again, and I stress, we do not connect directly to another peer for communication to preserve anonymity and transcend network topologies, we rely on peers to do the routing for us.

759
Unix / Linux Discussion / Re: dunno much about linux
« on: August 14, 2006, 09:54:57 pm »
It's because it doesn't have to be recompiled on each system, like C/++ do.

My point was that the amount of re-compiling that happens is minimal, and not really an issue anyways when it has to be done.


It really depends.  A large project can take hours to compile.

760
General Discussion / Re: Wireless Networking PCI Card Recommendation
« on: August 14, 2006, 09:17:45 pm »
I checked up on the Atheros webpage (your first link) and the D-Link was supported. Theoretically, it should be supported in FreeBSD 6.x? (I run 6.0 but I think I may end up reinstalling since it apparently refuses to boot now...)

Thanks for the input on broadcom and I will look into ralink, though I've had success with Atheros thus far so I may stick with them.

I planned on using this guide to set up my wireless network.

Yes, atheros works on FreeBSD 5.x and up
What's wrong with your system?

761
General Discussion / Re: Wireless Networking PCI Card Recommendation
« on: August 14, 2006, 08:27:57 pm »
I think I am gonna pick up the D-Link card, since it is supported under Atheros and that means it should work fine on FreeBSD.

I am going to browse around though. I guess I'll have to see.

Just remember - just about *any* card with a Windows driver should work with NDISWrapper, although I'm not sure if NDISWrapper works with FreeBSD.  Bah.  BSD sucks anyway.  -_-  :P

It's not about the name or manufacturer of the wireless card...its about the chipset and as far as I know, only the broadcom chipsets are unsupported in the Unix world.  Everything else works.  Most people who use ndis use it because their computer came with a card that uses broadcom.

762
General Discussion / Re: Wireless Networking PCI Card Recommendation
« on: August 14, 2006, 08:22:07 pm »
I'm gonna set up a wireless A/G network when I get home, and I am gonna do WPA-PSK security on it.

Recommend me a PCI card I can use. So far I am thinking about going with this card because of the sheer number of good reviews it has and it does wireless A (lots of the cards I've seen don't, but I like A for some reason. It's a fetish I suppose!) with WPA. I just hope it works in FreeBSD! (if all else fails, I'll ndiswrapper it or something)

A review also said it could broadcast through a ceiling and such, so it would possibly eliminate the need for an extender to the network. :/

Any other suggestions? Perhaps success with a card you've used? I'm new to wireless networking, so any suggestions are appreciated. Thanks! :)

WPA is supported on FreeBSD with both ndis and native drivers...minus a few (wi, ipw, wl drivers...for old hardware).  You'll want to use wpa_supplicant to associate to an access point using WPA.  wpa_supplicant can do other things besides WPA, it can be used to automatically associate to any network (even based on priority) of any security, open, WEP, WPA, EAP and so forth.
For wireless cards, avoid broadcom at all costs.  If you buy a card that uses a broadcom chipset you'll have to use ndis.
The best chipsets to include atheros and ralink...these are both very well supported chipsets in the Unix world.

See also:
http://customerproducts.atheros.com/customerproducts
http://damien.bergamini.free.fr/ral/list.html

763
Academic / School / Re: Infinities
« on: August 14, 2006, 10:25:43 am »
Ooo Ooo
Rule, is there such a set S s.t.
o(N) < o(S) < o(R) ? *wink* :)

o(N)=aleph_0
o(R)=c

764
Unix / Linux Discussion / Re: dunno much about linux
« on: August 13, 2006, 11:10:37 pm »
This is why the corporate world uses Windows. They have no time to dick around and use Google to find out the answer to their problems. They have no time to recompile their kernel to add in support for a new NIC. They have no time to configure apache via command line. They have no time to learn the command line; they'd just rather click a button and be done with it. They don't want to install a completely foreign operating system and edit a file to set up a software firewall. Why not just go out and buy a hardware one that comes with good quality tech support? emacs? Hah. Notepad. It's simple, effective, and in a corporate environment, it wins.

They don't want to hire someone to maintain a Linux system when they can just purchase Windows and get tech support (which comes with the price tag) and pay someone to follow instructions over the phone. It's a lot cheaper than hiring someone experienced in Linux who would charge a lot more, since his job could be a bitch.

Linux and Unix may be cheaper to install, but in the long run Windows wins in both maintenance, tech support, and cost of upkeep.

Note: I do love Unix and Linux. I find both to be extremely powerful, moreso over Windows if you know what you are doing. I just came to terms with these and really can't argue it. Maintaining a Windows system any moron can do, and in the corporate world any moron has a much smaller paycheck than someone who has a degree and specializes in system maintenance. Why hire someone that smart if the job is extremely simple?

Windows also has the Windows API, which is so extensive and amazing that programs work across the Windows platforms with ease, and any binary you produce will probably work without the need for "updated" libraries. Windows is also compatible with 95% of the hardware out there, which makes it a winner too.

nslay is right. Unix isn't as great as everyone makes it out to be. Especially for the average person.

Yeah.  You have to want to use Unix.  Windows is more transparent to the user.  Most people want to press buttons and get results without an ounce of effort.  But then again, nobody reads the instructions for anything anymore.  Although, Unix is far more powerful and interesting than Windows.

I think it would be interesting for a game company to write an OS that motivates people to maintain it and keep it secure, after all...why should there be a difference between a game and a tool? :)

765
Unix / Linux Discussion / Re: dunno much about linux
« on: August 13, 2006, 11:00:19 pm »
Although, these are sour points of Unix.  Let's not forget Unix has many good points to it too.

That disclaimer seems to be going with several of your posts these days :P.


Haha...well yes, trying to show that Unix isn't the be-all-do-all that its made out to be.  Most of the mystical nature about Unix is hype.

Pages: 1 ... 49 50 [51] 52