but afaict wine is not a jail and there is nothing stopping code running from it making linux syscalls directly bypassing wine and its set of virtual drives.
most likely they can get whatever privilages wine is running with. so in a normal linux desktop that would probablly mean the users data and normal user level network access (so it could hit any non-secured rescourses on the lan, send spam etc but couldn't mess arround with low level packets or listen on a privilaged port).
and if the user ever uses su/unrestricted sudo then they could get root by laying a trap.
Further consider: since 2001, the only two major desktop builders to consistently turn a profit: Apple and Dell. That's it. Wanna lose your shirt? Get into building Intel/AMD-based systems running Windows. You'll be bleeding piles of money in short order, joining Tandy, Compaq, Gateway, Fujitsu, Sony, IBM, Acer, etc. etc. etc. ad nauseum. yet the small local white box vendors don't exactly seem to be dissapearing either.
well its the standard windows vector format and as such is used for moving vector images between apps on the windows clipboard.
also used in the windows printing system.
as a file format its mainly used by clipart collections afaict. wmf is a pretty basic format (emf is somewhat better though) but its well supported and adequate for the purpose of clipart.
its not as well known as bmp because there was no editor app supplied with windows and most pro stuff encouraged use of its native format.
i was under the impression that getsystemclipboard only worked for formats the jvm supported natively. is there a way to get the raw wmf data from the windows clipboard through it?
when i put a metafile on the clipboard and call Toolkit.getDefaultToolkit().getSystemClipboard().g etAvailableDataFlavors(); it seems all i get it offered is a java.awt.image (which iirc represents a bitmap).
getting back the copyrights to the historic unix source would not make linux an official unix. to do that linux would have to be passed by the open group like all other official unicies are.
Let's do some math. Say you allocate 32MB for even a moderate java program. 5 x 32 = 160MB. Typically PCs ship with 512MB. Doesn't look like half the memory to me! ok so a third then which is still a significant chunk.
i just tried jedit from cold (no jvm run since last reboot) and it took 20 seconds which to me is a noticable delay i'd have to reboot to do another fair test (otherwise cache would effect the results). this machine is a laptop running windows xp with an athlon xp 1800+ cpu so not the fastest thing in the world but far from the slowest either.
warm start (after having been run recently) was 5 seconds which is acceptable but not brilliant for a small app.
So what? It is still code.
well it being code depends on your definintion of code but its NOT code that i would ever touch manually its just exported from the tool used to draw the diagram and loaded directly by the winapi.
this lack of a standard vector graphics format also means that afaict there is no way to copy/paste vector graphics from the system clipboard without using custom native code.
They do start immediately. It is the optimiser that takes a few seconds to kick in. starting even the smallest java gui app from cold (no jvm already in cache etc) takes noticable time. starting a similar app written in a traditional language is instant.
Not true. You can run simple non-GUI apps in just a few megabytes - try it! Most of that is the interpreter/VM. iirc java now works by allocating up to a limit set at vm start time and doesn't start collecting garbage until that limit it reached. so unless you use special settings on the vm command line java apps will end up using a lot of memory.
Even if they do take a few tens of megabytes, typical machines now have hundreds, so why do you say this? because if you are using say 5 small java apps at once thats probablly half your memory gone already not counting any other stuff that needs memory.
What do you think a Windows metafile is but drawing from code? its drawing from a file i can produce easilly by copying to the clipboard from any tool i like and then using something like irfanview to save the wmf on the clipboard to a file.
What? Heresy! Java is antiethical to a lot of stuff that made VB bad--specifically, the horrible laxity towards programming that made maintenance (and good OO principles) a pain. You won't find a funky "variable" data type, for instance. javas attitude of almost everything is an object and the rest can be made into one with an immutable wrapper makes javas type object close enough to vbs type variant. Having said that though in general the java language is much cleaner than vb because its a new language without the long history of remaining mostly code compatible that vb had.
When it comes to thinks like array bound checking, sure, it makes it easier for mediocre programmers to succeed, but it also makes it much easier for good programmers to avoid bugs. indeed bounds checking and garbage collection eliminate entire classes of problems. if you could do what java does and not make programs that were either slow, bloated (which i define as making the rest of the system feel slower) or both then i'd be happy but they don't seem to have managed it yet.
also unfortunately javas GC is only usable at all for managing memory as finalizers are not gauranteed to be called until memory is re-used (which may be a long time) and therefore not suitable for use as a means of freeing the non-memory rescources and object represents.
Heck, often you can even compile the entire java program to bytecode using gcj or a similar tool, or use JNI to write only speed-critical segments in C++. i can't say i've ever tried gjc myself but i get the impression that performance wise its worse than the sun jvm not better. As for your jni comment you can similarly write fast code in your language of choice and use it from VB in fact you can probablly do it more easilly from vb than from java (vb can load dlls directly java always needs a play nice with java layer in the native code).
Java stacks up quite well to C/C++ when you're not giving it an artifical benchmark, since the newer JVMs will (when code segments are executed enough) compile them direct to bytecode. This means with proper "warmup", a desktop java application can work on par with a c++ implementation. 1: i don't wan't warmup i wan't apps that start immediately 2: event the smallest java apps can claim tens of megabytes of memory due to the design of the gc system. you don't really wan't to be running more than a few of them at once and you don't wan't to have any of them running whilst running games etc. 3: the java gui libraries are pretty horrible making the production of good fast gui apps much harder. to take a simple example in a native windows app you can just use a metafile for a scaleable background image. in a java app i'd be forced to either resort to a bitmap (much slower to scale especially if the original is high res to avoid visible scaling artifacts), use a third party library (means finding a suitable one and more delployment headaches) or do the drawing from code.
As for the deployment overhead--it's really just having the JVM installed. For windows, it's a snap, and I had no problems doing it on slackware. The deployment overhead is a small price to pay for the portability and reliability gains. lets see, for online distribution you had better hope your user has either broadband or a lot of patiance. For cd the size is not going to be a problem but there is the issue of suns redistribution conditions (which i don't claim to be an expert on the details of but jvms are normally installed systemwide yet the redistribution conditions iirc say for your app only).
when i tried jake on here it was unplayablly slow now i haven't tried the original C version on here but ut which is of similar vintage is fine.
people can come up with benchmarks both for and against java much as people can come up with TCO studies both for and against linux. but my experiance is that java stuff is either slow, memory hogging or both.
i think java and its ilk are becoming the new vb. easy for a relatively poor programmer to handle (unlike C which requires low level knowlage and C++ which is extremely complex and has many features that are widely abused). but doesn't perform as well as traditonal languages especially on the desktop and carries a large deployment overhead (vbs isn't large by modern standards but certainly was when floppies were in more widespread use).
therefore java is very common in situations where the user has no choice such as internal applications and fairly common in open source (at least by project count) but doesn't seem very common in retail software.
1: 30 seconds off is not "very noticable" i doubt many pc clocks that aren't on a network sync system are set much more accurately than that.
2: any system that uses a time server will have had the leap seconds forced on it even if it didn't understand them like standard unix time doesn't (causing discontinuities in system time and similar nasties)
It's quite possible that the XBox 360 and the Revolution totally tank indeed but it seems to me power owns the next generation console market whoever wins.
macs have been using the powerpc for a long time (over 10 years now and still going for the moment although due to switch soon). Console makers afaict rarely use the same architecture for more than two consoles running (if that).
most internet e-mail deployments have at least two push steps (often to overloaded servers) followed by a pull step.
the pull step alone can add quite some delay (depending on the recipiants settings) and thats not counting delays caused by overloaded mailservers (fast e-mail doesn't often seem to be a priority for isps as long as it gets thier in the end)
finally there is no way to tell if a user is online with e-mail
if you have a fast push based internal mail system then sure use it like an im system but with a normal internet e-mail setup the delay will most likely be unacceptable for that use.
Oh. You must mean GAMES. Okay, but personally, I'd get a "real" computer, and then buy a PS2 or XBox to pound on...
some people like consoles and i must admit there are a few console games that i quite like but no console even comes close to the back catalogue of PC games (though admittedly a lot of those can be hard to make work on the non-dos versions of windows) and even if they did very few console games support mods or even custom maps and internet play is a pretty new feature for consoles (yet its something the PC has been doing for years).
Oddly enough, tools like Skype seem to do it right from the ground up, well apart from the fact they rely on abusing thier users bandwidth to support users behind firewalls yes.
any source for that on an official domain i'd rather not cite a slashdot comment in a wp article.
but afaict wine is not a jail and there is nothing stopping code running from it making linux syscalls directly bypassing wine and its set of virtual drives.
most likely they can get whatever privilages wine is running with. so in a normal linux desktop that would probablly mean the users data and normal user level network access (so it could hit any non-secured rescourses on the lan, send spam etc but couldn't mess arround with low level packets or listen on a privilaged port).
and if the user ever uses su/unrestricted sudo then they could get root by laying a trap.
Further consider: since 2001, the only two major desktop builders to consistently turn a profit: Apple and Dell. That's it. Wanna lose your shirt? Get into building Intel/AMD-based systems running Windows. You'll be bleeding piles of money in short order, joining Tandy, Compaq, Gateway, Fujitsu, Sony, IBM, Acer, etc. etc. etc. ad nauseum.
yet the small local white box vendors don't exactly seem to be dissapearing either.
well its the standard windows vector format and as such is used for moving vector images between apps on the windows clipboard.
also used in the windows printing system.
as a file format its mainly used by clipart collections afaict. wmf is a pretty basic format (emf is somewhat better though) but its well supported and adequate for the purpose of clipart.
its not as well known as bmp because there was no editor app supplied with windows and most pro stuff encouraged use of its native format.
that the unregister workaround only cut off some of the nastier attack vectors but not nessacerally all of them.
thats just punishing the very people who have already lost out from the crash of this scam.
the people who should be being punished are those individuals behind this
iirc the ibook does have a pcmcia slot but its under the keyboard with no external access and an antenna cable ending just next to it.
i was under the impression that getsystemclipboard only worked for formats the jvm supported natively. is there a way to get the raw wmf data from the windows clipboard through it?
g etAvailableDataFlavors(); it seems all i get it offered is a java.awt.image (which iirc represents a bitmap).
when i put a metafile on the clipboard and call Toolkit.getDefaultToolkit().getSystemClipboard().
getting back the copyrights to the historic unix source would not make linux an official unix. to do that linux would have to be passed by the open group like all other official unicies are.
Let's do some math. Say you allocate 32MB for even a moderate java program. 5 x 32 = 160MB. Typically PCs ship with 512MB. Doesn't look like half the memory to me!
ok so a third then which is still a significant chunk.
i just tried jedit from cold (no jvm run since last reboot) and it took 20 seconds which to me is a noticable delay i'd have to reboot to do another fair test (otherwise cache would effect the results). this machine is a laptop running windows xp with an athlon xp 1800+ cpu so not the fastest thing in the world but far from the slowest either.
warm start (after having been run recently) was 5 seconds which is acceptable but not brilliant for a small app.
So what? It is still code.
well it being code depends on your definintion of code but its NOT code that i would ever touch manually its just exported from the tool used to draw the diagram and loaded directly by the winapi.
this lack of a standard vector graphics format also means that afaict there is no way to copy/paste vector graphics from the system clipboard without using custom native code.
They do start immediately. It is the optimiser that takes a few seconds to kick in.
starting even the smallest java gui app from cold (no jvm already in cache etc) takes noticable time. starting a similar app written in a traditional language is instant.
Not true. You can run simple non-GUI apps in just a few megabytes - try it! Most of that is the interpreter/VM.
iirc java now works by allocating up to a limit set at vm start time and doesn't start collecting garbage until that limit it reached. so unless you use special settings on the vm command line java apps will end up using a lot of memory.
Even if they do take a few tens of megabytes, typical machines now have hundreds, so why do you say this?
because if you are using say 5 small java apps at once thats probablly half your memory gone already not counting any other stuff that needs memory.
What do you think a Windows metafile is but drawing from code?
its drawing from a file i can produce easilly by copying to the clipboard from any tool i like and then using something like irfanview to save the wmf on the clipboard to a file.
What? Heresy! Java is antiethical to a lot of stuff that made VB bad--specifically, the horrible laxity towards programming that made maintenance (and good OO principles) a pain. You won't find a funky "variable" data type, for instance.
javas attitude of almost everything is an object and the rest can be made into one with an immutable wrapper makes javas type object close enough to vbs type variant. Having said that though in general the java language is much cleaner than vb because its a new language without the long history of remaining mostly code compatible that vb had.
When it comes to thinks like array bound checking, sure, it makes it easier for mediocre programmers to succeed, but it also makes it much easier for good programmers to avoid bugs.
indeed bounds checking and garbage collection eliminate entire classes of problems. if you could do what java does and not make programs that were either slow, bloated (which i define as making the rest of the system feel slower) or both then i'd be happy but they don't seem to have managed it yet.
also unfortunately javas GC is only usable at all for managing memory as finalizers are not gauranteed to be called until memory is re-used (which may be a long time) and therefore not suitable for use as a means of freeing the non-memory rescources and object represents.
Heck, often you can even compile the entire java program to bytecode using gcj or a similar tool, or use JNI to write only speed-critical segments in C++.
i can't say i've ever tried gjc myself but i get the impression that performance wise its worse than the sun jvm not better. As for your jni comment you can similarly write fast code in your language of choice and use it from VB in fact you can probablly do it more easilly from vb than from java (vb can load dlls directly java always needs a play nice with java layer in the native code).
Java stacks up quite well to C/C++ when you're not giving it an artifical benchmark, since the newer JVMs will (when code segments are executed enough) compile them direct to bytecode. This means with proper "warmup", a desktop java application can work on par with a c++ implementation.
1: i don't wan't warmup i wan't apps that start immediately
2: event the smallest java apps can claim tens of megabytes of memory due to the design of the gc system. you don't really wan't to be running more than a few of them at once and you don't wan't to have any of them running whilst running games etc.
3: the java gui libraries are pretty horrible making the production of good fast gui apps much harder. to take a simple example in a native windows app you can just use a metafile for a scaleable background image. in a java app i'd be forced to either resort to a bitmap (much slower to scale especially if the original is high res to avoid visible scaling artifacts), use a third party library (means finding a suitable one and more delployment headaches) or do the drawing from code.
As for the deployment overhead--it's really just having the JVM installed. For windows, it's a snap, and I had no problems doing it on slackware. The deployment overhead is a small price to pay for the portability and reliability gains.
lets see, for online distribution you had better hope your user has either broadband or a lot of patiance. For cd the size is not going to be a problem but there is the issue of suns redistribution conditions (which i don't claim to be an expert on the details of but jvms are normally installed systemwide yet the redistribution conditions iirc say for your app only).
when i tried jake on here it was unplayablly slow now i haven't tried the original C version on here but ut which is of similar vintage is fine.
people can come up with benchmarks both for and against java much as people can come up with TCO studies both for and against linux. but my experiance is that java stuff is either slow, memory hogging or both.
i think java and its ilk are becoming the new vb. easy for a relatively poor programmer to handle (unlike C which requires low level knowlage and C++ which is extremely complex and has many features that are widely abused). but doesn't perform as well as traditonal languages especially on the desktop and carries a large deployment overhead (vbs isn't large by modern standards but certainly was when floppies were in more widespread use).
therefore java is very common in situations where the user has no choice such as internal applications and fairly common in open source (at least by project count) but doesn't seem very common in retail software.
for a public lab what you describe would be fine
for a situation where people are forced to use one setup like it or not it would also work.
and same for a situation where you can get away with riding roughshod over users setups again fine.
the issue the gp was asking about was how to upgrade firefox remotely whilst preserving user settings.
1: 30 seconds off is not "very noticable" i doubt many pc clocks that aren't on a network sync system are set much more accurately than that.
2: any system that uses a time server will have had the leap seconds forced on it even if it didn't understand them like standard unix time doesn't (causing discontinuities in system time and similar nasties)
It's quite possible that the XBox 360 and the Revolution totally tank
indeed but it seems to me power owns the next generation console market whoever wins.
macs have been using the powerpc for a long time (over 10 years now and still going for the moment although due to switch soon). Console makers afaict rarely use the same architecture for more than two consoles running (if that).
at least back to +3 so anyone who reads it will see the clarification. as it stands this is very uninformitive.
e.g. is there a way for a remote user to make it display a wmf without the recipiants consent?
most internet e-mail deployments have at least two push steps (often to overloaded servers) followed by a pull step.
the pull step alone can add quite some delay (depending on the recipiants settings) and thats not counting delays caused by overloaded mailservers (fast e-mail doesn't often seem to be a priority for isps as long as it gets thier in the end)
finally there is no way to tell if a user is online with e-mail
if you have a fast push based internal mail system then sure use it like an im system but with a normal internet e-mail setup the delay will most likely be unacceptable for that use.
Oh. You must mean GAMES. Okay, but personally, I'd get a "real" computer, and then buy a PS2 or XBox to pound on...
some people like consoles and i must admit there are a few console games that i quite like but no console even comes close to the back catalogue of PC games (though admittedly a lot of those can be hard to make work on the non-dos versions of windows) and even if they did very few console games support mods or even custom maps and internet play is a pretty new feature for consoles (yet its something the PC has been doing for years).
Oddly enough, tools like Skype seem to do it right from the ground up,
well apart from the fact they rely on abusing thier users bandwidth to support users behind firewalls yes.
and -5V and -12V and 3.3V for an ATX power connection.