 |
 |
|
 |
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"Orchid XP v7" <voi### [at] dev null> wrote in message
news:471e2d2f$1@news.povray.org...
> >> not just wasted because lazy programmers couldn't be bothered to fix
> >> their code.
> >
> > Why on Earth should they optimise a program for minimum-RAM footprint
> > that uses only 10MB in the first place??!?! It would be a total WASTE
> > of time and money for precisely ZERO benefit.
>
> It saddens me that these days people think producing a superior product
> is "a waste of time".
It is a waste when there's no return on the time spent. Software is a
business. If you write software for a software house and tell the planners
and designers that you need a week to optimise the code so that it takes a
quarter of the memory it would otherwise need, they'll likly to tell you to
get lost. That week is a week not spent adding features to the program, and
its features that sell, not efficiency or beauty of code.
That's the reality of the software business. When you're writing code for
fun, you can spend several days getting things as optimal as you like,
because you're working on your own time.
Ref: http://www.codinghorror.com/blog/archives/000980.html
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
>> Why on Earth should they optimise a program for minimum-RAM footprint
>> that uses only 10MB in the first place??!?! It would be a total WASTE of
>> time and money for precisely ZERO benefit.
>
> It saddens me that these days people think producing a superior product is
> "a waste of time".
Look, nobody in the world apart from you cares if Word uses up 10MB or 6MB
of RAM, Microsoft are not going to employ 50 people for a few months to go
through and optimise for RAM usage just to make you feel better. In fact,
if they did that they'd probably sacrifice speed by using less
speed-efficient data structures somewhere, compressed graphics, or such
like. I'm pretty sure that they don't just randomly insert code to use up
RAM for no reason...
When they are writing something like Word, which they know is going to use a
tiny % of RAM compared to what everyone has, I am pretty sure they
prioritise it loading up and doing stuff quickly rather than using a minimum
amount of RAM. Why do it the other way round?
> You say "only" as if 10 MB is a small amount of RAM...
I can buy a 1024 MB USB stick for £5.87 (from ebuyer.com). That makes 10 MB
cost about 6p. Fast RAM for a computer is about 5 or 6 times that price -
not much is it? The cheapest machine on the Dell website (£359) comes with
1024 MB RAM. I open up task manager and I have 21 processes using more than
10MB of RAM. To me, 10MB seems pretty small.
> Given how badly many of the PCs at work struggle to run Word, I doubt
> that...
It's not our fault your company has updated the software without updating
the hardware in 10 years.
> I guess it just comes down to how frustrating it is that my PC takes 30
> seconds to load or close any given application.
Get a new PC dude - I'm pretty sure that even if you spend £50 on ebay you'd
be way better off. Why are you still using an ancient pile of junk to try
and run modern software?
> I mean, 20 *years* ago computers could do that instanteneously with a
> fraction of the RAM and CPU power. Why are we not coding like that any
> more??
Because we (well, most of us) have better computers than we did 20 years
ago?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On Wed, 24 Oct 2007 09:08:59 +0200, scott wrote:
> Look, nobody in the world apart from you cares if Word uses up 10MB or
> 6MB of RAM,
Um, not nobody. It's bothered me for a long time that as computers get
faster and faster that coding gets sloppier and sloppier.
I realise the realities of software development (given that I work for a
software company), but if coders were taught to make their code efficient
to start with, then it would be less of a problem. The problem doesn't
start in the software development houses, it starts at school when
students are learning how to code and are taught bad habits from the
start.
If coders learned how to write efficient code to start with, there would
be less wastage of memory in a system (regardless of whether it's a 64K
system or a 4 GB system), and wasting less memory means more can be done
with the system at any given time.
Jim
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On Wed, 24 Oct 2007 12:48:01 -0400, Jim Henderson wrote:
> The problem doesn't
> start in the software development houses, it starts at school when
> students are learning how to code and are taught bad habits from the
> start.
As an example, I remember a core component of a popular server OS that
would, under certain circumstances, display negative disk space free.
This looks quite stupid when it happens - since clearly that's not a
possible situation. The bug was deemed to be a "cosmetic" error and was
never fixed. Customers looked at it and said "if that sort of error
exists, what am I *not* seeing?"
To someone with a little background in C (the language used for the tool
in question), it's clear that the problem was either (a) sloppy
declaration of the variable type, letting the default signed value be
used rather than specifying an unsigned data type or (b) poor use of the
formatting specification when the data was output, using a signed output
type when an unsigned data type was used.
Either way is not good. It's an easy mistake to make, but if they've
internalized the need to be specific, then this sort of thing wouldn't
happen.
Jim
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Jim Henderson <nos### [at] nospam com> wrote:
> (a) sloppy
> declaration of the variable type, letting the default signed value be
> used rather than specifying an unsigned data type
How exactly would that solve the problem? The only difference would be
that instead of seeing something like "-1234" you would see something like
"4294966062" (or "18446744073709550382" if they are using 64-bit values),
which isn't any more helpful. In fact, it's actually worse because it's
even more confusing.
On a different note, I have been changing my habit with regard to this.
In the past I followed the practice "always use unsigned values for things
where negative values don't make sense, only use signed values where negative
values make sense and are possible". However, I have noticed more and more
how this cause more problems than it's worth.
The current trend in programming guides is becoming more "always use
signed values unless there's a good reason not to", and I am starting
to agree with that.
One good example: Assume you have a bitmap in memory. The dimensions of
bitmaps are always positive. Negative values don't make any sense with such
a thing as bitmap dimensions. These dimensions will never be negative.
Thus it makes sense to use unsigned values to represent the dimensions of
the bitmap?
However, suppose that you want to draw the bitmap on screen, at a given
position. The position if the bitmap on the screen is given as pixel
coordinates so that the center of the bitmap is located at those coordinates.
It's perfectly valid if the bitmap is partially outside the screen. This
means that the upper-left corner screen coordinates of the bitmap can be
negative. The center coordinates themselves could be negative too.
Usually when you draw a bitmap on screen you specify its position on
screen by its upper left corner coordinate. Thus you would calculate these
coordinates with something like (x - width/2, y - height/2).
Since x and y are signed integers and width and height are unsigned
integers, you are now mixing signed and unsigned integers, causing some
implicit conversions, and possibly producing a compiler warning.
Moreover, comparing (signed) coordinates with the (usigned) bitmap
dimensions are even more likely to give you problems, or at least compiler
warnings, for example in something like "if(x < width)".
The handiest way of doing this is to keep the bitmap dimensions as
signed integers. Even though they never get negative values, they can
be part of expressions which result in negative values, and thus there
will not be any surprising problems with implicit conversions nor compiler
warnings.
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On Wed, 24 Oct 2007 13:21:47 -0400, Warp wrote:
>> (a) sloppy
>> declaration of the variable type, letting the default signed value be
>> used rather than specifying an unsigned data type
>
> How exactly would that solve the problem? The only difference would be
> that instead of seeing something like "-1234" you would see something
> like "4294966062" (or "18446744073709550382" if they are using 64-bit
> values), which isn't any more helpful. In fact, it's actually worse
> because it's even more confusing.
Because the problem was caused by an overflow condition in the
calculator. IIRC, I did the math, and the value was in fact correct,
just with the wrong sign. But the fact that it evaluated as a negative
number threw all sorts of other issues with regards to filesystem
compression and problems with server-based programs that were checking
for free space and seeing there was none available when in fact there was
more than enough.
Jim
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
scott wrote:
> Look, nobody in the world apart from you cares
Yeah, I noticed. And I guess that's why this situation has been allowed
to come into existence.
> Microsoft are not going to employ 50 people for a few months
> to go through and optimise for RAM usage just to make you feel better.
Indeed no - their job is to research new techniques for slowing software
down as much as possible to boost sales of expensive new hardware.
(Presumably this is why the hardware vendors love them so much...)
> I'm pretty sure that they don't just randomly insert code to use
> up RAM for no reason...
Oh really? Do you have any actual evidence for that?
(I doubt most people make inefficient code on purpose, but M$ I'm not so
sure about.)
>> You say "only" as if 10 MB is a small amount of RAM...
>
> I can buy a 1024 MB USB stick for £5.87 (from ebuyer.com). That makes
> 10 MB cost about 6p. Fast RAM for a computer is about 5 or 6 times that
> price - not much is it?
Now I'm puzzled - when I bought 1 GB of RAM for my PC, I had to pay
several hundred pounds for it... Am I living in an alternate reality or
something?
>> I mean, 20 *years* ago computers could do that instanteneously with a
>> fraction of the RAM and CPU power. Why are we not coding like that any
>> more??
>
> Because we (well, most of us) have better computers than we did 20 years
> ago?
And that's just it, isn't it?
Why bother fixing the problem when you can just throw more hardware at it.
It's like those stories you read about on The Daily WTF where some idiot
puts together a horribly inefficient SQL system, and rather than make
the obvious change to improve performance, the client ends up buying a
small cluster of high-end servers. What the hell is WRONG with the world?!
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
scott wrote:
> Look, nobody in the world apart from you cares if Word uses up 10MB or
> 6MB of RAM, Microsoft are not going to employ 50 people for a few months
> to go through and optimise for RAM usage just to make you feel better.
On the other hand, they *do* optimize disk usage. Ever look at the
full-blown "advanced" tab on the installer? There's probably 50
different independent packages you can decide to install or not.
>> I mean, 20 *years* ago computers could do that instanteneously with a
>> fraction of the RAM and CPU power. Why are we not coding like that any
>> more??
>
> Because we (well, most of us) have better computers than we did 20 years
> ago?
And 50 years ago, people were hand-compiling machine code, punching it
on tape, and watching the results by actually looking at the bits in
memory as they glowed on the screen. So? :-)
I'm still surprised I can get a shaded textured 3D scene with shadows
calculated refreshed faster than my monitor sync rate, but PowerPoint
can't smoothly scroll text onto the screen without tearing it. :-?
--
Darren New / San Diego, CA, USA (PST)
Remember the good old days, when we
used to complain about cryptography
being export-restricted?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Jim Henderson wrote:
> To someone with a little background in C
There's the problem right there. As one professor I knew put it, "There
are two kinds of languages. The ones that support unbounded arithmetic
types, and the ones that don't know they need to support unbounded
arithmetic types."
I can't tell you how many tools I went through looking for one that
would handle a file >4G for restartable downloads. I finally had to
install bittorrent at both ends just to move the file across the
network. In spite of the fact that FTP uses ASCII representations for
all numbers, and hence has no inherent limitation in the protocol.
--
Darren New / San Diego, CA, USA (PST)
Remember the good old days, when we
used to complain about cryptography
being export-restricted?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Jim Henderson wrote:
> Because the problem was caused by an overflow condition in the
> calculator.
Actually, Thief has a similar problem in its installer. If you're within
60 meg (or so) of having 32G free disk space free, it won't install,
complaining you don't have enough space. If you then create a 80 meg
file, it'll install fine.
Oh, and Warp, they aren't "unsigned integers" and "signed integers" in
C. They're "ints", not "integers". ;-) That's the root of the problem.
Mixing signed integers and unsigned integers are fine. It's just C's
weird conversion rules for ints that are problematic. ;-) </nit>
--
Darren New / San Diego, CA, USA (PST)
Remember the good old days, when we
used to complain about cryptography
being export-restricted?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New <dne### [at] san rr com> wrote:
> Oh, and Warp, they aren't "unsigned integers" and "signed integers" in
> C. They're "ints", not "integers". ;-) That's the root of the problem.
> Mixing signed integers and unsigned integers are fine. It's just C's
> weird conversion rules for ints that are problematic. ;-) </nit>
So the implicit conversion rules of C for signed and unsigned integers
are weird? Care to suggest better conversion rules?
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New <dne### [at] san rr com> wrote:
> There's the problem right there. As one professor I knew put it, "There
> are two kinds of languages. The ones that support unbounded arithmetic
> types, and the ones that don't know they need to support unbounded
> arithmetic types."
Having automatic unbounded arithmetic types is fine as long as you don't
care about efficiency.
Integral types which support unlimited precision can *not* be as efficient
as CPU-register-sized integers unless you explicitly tell to the compiler
that "this variable will always stay within these limits", in which case
you are already stuck with the same limitation as the C integral variables.
If you don't tell the compiler those limits and it has to make sure that
in case of overflow it switches to unlimited precision, then those integral
types simply cannot be as fast as the bounded ones. It's just physically
impossible. If nothing else, the compiler will have to add an overflow
check after each single operation done with those integers, thus adding
clock cycles and code size (filling code caches faster).
I'm also sure that being forced to prepare for unlimited precision math
makes many compiler optimizations impossible (which would be possible with
register-sized integers).
(Also, in the general case a compiler cannot deduce by examining a piece
of code that a variable will never have a value outside certain boundaries.
I'm certain this kind of check would be equivalent to the halting problem.)
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Aw quit yer complainin' and write your own microscopic software if you
wants it. That's the proper *nix-user attitude. XD
--
Tim Cook
http://home.bellsouth.net/p/PWP-empyrean
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GFA dpu- s: a?-- C++(++++) U P? L E--- W++(+++)>$
N++ o? K- w(+) O? M-(--) V? PS+(+++) PE(--) Y(--)
PGP-(--) t* 5++>+++++ X+ R* tv+ b++(+++) DI
D++(---) G(++) e*>++ h+ !r--- !y--
------END GEEK CODE BLOCK------
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Tim Cook <z99### [at] bellsouth net> wrote:
> Aw quit yer complainin' and write your own microscopic software if you
> wants it. That's the proper *nix-user attitude. XD
That's right. Open Office is open source, so it's a good start. Go and
optimize it until it's small enough for your taste.
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp wrote:
> Tim Cook <z99### [at] bellsouth net> wrote:
>> Aw quit yer complainin' and write your own microscopic software if you
>> wants it. That's the proper *nix-user attitude. XD
>
> That's right. Open Office is open source, so it's a good start. Go and
> optimize it until it's small enough for your taste.
Arguably it would be faster to start again from scratch rather than try
and learn the OO codebase... :-S
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On Wed, 24 Oct 2007 18:57:07 +0100, Orchid XP v7 wrote:
> Indeed no - their job is to research new techniques for slowing software
> down as much as possible to boost sales of expensive new hardware.
> (Presumably this is why the hardware vendors love them so much...)
That's been my working theory for years. Goes something like this:
NetWare: Solid, stable, reliable OS. No possibility for hardware
upgrades (until 4.x came out) or extended support contracts, because it
just worked.
Windows: Higher hardware requirements, not as stable as NetWare, so
requires ongoing maintenance, support, and you hope that they'll fix the
bugs in the current version in the next version so you have an upgrade
opportunity. Of course, with the new version comes higher hardware
requirements, so the vendor gets to make their hardware sales quotas, and
you'll want support as well, so a reseller can also sell a support
contract with the hardware and SW installation.
Things have changed a bit over the last few years, of course, but I never
wondered why resellers didn't push NetWare over Windows, and I still
don't. There's no money in it for them.
I've always said that Microsoft was the king of making software that was
"just good enough". IOW, it's good enough that most people are not
willing to go to the expense of switching, even though there's plenty to
complain about. They then managed to find the right upgrade price point
that played to the business people - the point at which it's too
expensive *immediately* to switch to something better as opposed to just
getting the upgrades and praying. Businesses that tend to look more than
a quarter or two out on their financial planning tend to be more likely
to switch; businesses where turnover is fairly high and people are only
concerned about the next couple of quarters' worth of spending are less
likely to switch.
Jim
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On Wed, 24 Oct 2007 11:26:11 -0700, Darren New wrote:
> Jim Henderson wrote:
>> To someone with a little background in C
>
> There's the problem right there. As one professor I knew put it, "There
> are two kinds of languages. The ones that support unbounded arithmetic
> types, and the ones that don't know they need to support unbounded
> arithmetic types."
Yep, I can see that - the need for arbitrary-size variables (and the
supporting math libraries) has become much more important.
That said, though, I'm talking about a product developed over 10 years
ago, and from having seen bits of the source code and knowing many of the
developers, that would've been the "language of choice" at the time.
> I can't tell you how many tools I went through looking for one that
> would handle a file >4G for restartable downloads. I finally had to
> install bittorrent at both ends just to move the file across the
> network. In spite of the fact that FTP uses ASCII representations for
> all numbers, and hence has no inherent limitation in the protocol.
I see that problem all the time myself as well - I make downloads
available for a limited audience using a tool that has problems with IE7
(of all things) because they're too big - FF doesn't have a problem with
them, and many of the download managers we suggest also work fine (I use
wget and never have a problem with > 4 GB file sizes).
Jim
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On Wed, 24 Oct 2007 20:22:30 +0100, Orchid XP v7 wrote:
> Arguably it would be faster to start again from scratch rather than try
> and learn the OO codebase... :-S
Doubt it, otherwise new coders coming into the project would never get
started (into any project, for that matter).
I got access to the code for one of the products I used to support, and
it was several million lines of code. The engineering manager who
granted me the access said they *normally* spend at least 6 solid months
of examining and learning the code before they're allowed to commit
changes.
And that's a minimum of 8 hours a day of doing code review...for 6
months...
Jim
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Jim Henderson wrote:
> On Wed, 24 Oct 2007 20:22:30 +0100, Orchid XP v7 wrote:
>
>> Arguably it would be faster to start again from scratch rather than try
>> and learn the OO codebase... :-S
>
> Doubt it, otherwise new coders coming into the project would never get
> started (into any project, for that matter).
I always wondered about this... How *do* you get started on a new
project with millions of lines of code and no documentation?
(I've looked at a couple of such projects, but failed to learn anything
of use. I just couldn't figure out what the heck any of it is...)
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"Orchid XP v7" <voi### [at] dev null> wrote in message
news:471fa7b9$1@news.povray.org...
> Jim Henderson wrote:
> > On Wed, 24 Oct 2007 20:22:30 +0100, Orchid XP v7 wrote:
> >
> >> Arguably it would be faster to start again from scratch rather than try
> >> and learn the OO codebase... :-S
> >
> > Doubt it, otherwise new coders coming into the project would never get
> > started (into any project, for that matter).
>
> I always wondered about this... How *do* you get started on a new
> project with millions of lines of code and no documentation?
Usually with the help of someone who knows the codebase and quite a bit of
time. I've done it a couple times. Doesn't really get easier.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On Wed, 24 Oct 2007 21:14:54 +0100, Orchid XP v7 wrote:
> Jim Henderson wrote:
>> On Wed, 24 Oct 2007 20:22:30 +0100, Orchid XP v7 wrote:
>>
>>> Arguably it would be faster to start again from scratch rather than
>>> try and learn the OO codebase... :-S
>>
>> Doubt it, otherwise new coders coming into the project would never get
>> started (into any project, for that matter).
>
> I always wondered about this... How *do* you get started on a new
> project with millions of lines of code and no documentation?
You spend lots of time reading code and asking questions. :-)
Or, what I did, was spend lots of time reading code and asking questions,
but not as much as a programmer learning to contribute to the project
would, and just spent my time looking at the pieces I was interested in.
I also came from a practical knowledge background from implementing the
product, and spent a fair amount of time using source code analysis tools
to look at call stacks taken from running systems. Didn't give me a
comprehensive view of what was going on, but I was able to suggest fixes
for a couple of issues to the developers that were feasible.
Jim
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp wrote:
> So the implicit conversion rules of C for signed and unsigned integers
> are weird? Care to suggest better conversion rules?
No, they make perfect sense, when you consider that they're two
different ranges of values fit into the same number of bits. I'm merely
pointing out that the errors you describe comes from treating "int"s as
"integers". There's no such thing as an "unsigned integer", only an
"unsigned int". It was a nit, nothing more. :-)
I.e., the problem isn't the conversion rules, but the fact that people
code in C without constantly keeping in mind the limitations caused by
the low-level nature of the values and the lack of error checking.
--
Darren New / San Diego, CA, USA (PST)
Remember the good old days, when we
used to complain about cryptography
being export-restricted?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp wrote:
> Having automatic unbounded arithmetic types is fine as long as you don't
> care about efficiency.
Ah yes. The "it's better to be fast than correct" philosophy. It serves
Microsoft so well, after all. ;-)
> Integral types which support unlimited precision can *not* be as efficient
> as CPU-register-sized integers
Sure they can. I've used many computers where the unbounded arithmetic
was just as fast as the bounded arithmetic when you stayed within bounds.
> unless you explicitly tell to the compiler
> that "this variable will always stay within these limits", in which case
> you are already stuck with the same limitation as the C integral variables.
Nope. Ada, for example, allows you to specify an upper size on variables
and then actually *enforces* it, rather than just failing in bizarre
ways like leaving you with the sum of two positives being negative. And
Ada isn't known for its inefficiencies.
> If you don't tell the compiler those limits and it has to make sure that
> in case of overflow it switches to unlimited precision, then those integral
> types simply cannot be as fast as the bounded ones. It's just physically
> impossible. If nothing else, the compiler will have to add an overflow
> check after each single operation done with those integers, thus adding
> clock cycles and code size (filling code caches faster).
Errr, no. I've used plenty of CPUs that provide for traps on overflow,
so the normal case is fast and when the value overflows, it traps out
and switches to the slower bignums rather than giving the wrong answers.
> I'm also sure that being forced to prepare for unlimited precision math
> makes many compiler optimizations impossible (which would be possible with
> register-sized integers).
Maybe. I would think this is more a CPU design issue than anything. If
the trap carried enough information, I bet you could handle it in the
compiler.
> (Also, in the general case a compiler cannot deduce by examining a piece
> of code that a variable will never have a value outside certain boundaries.
> I'm certain this kind of check would be equivalent to the halting problem.)
Yah, probably. On the other hand, you expect humans to be able to do
this? If the compiler can't figure it out, neither can the programmer.
--
Darren New / San Diego, CA, USA (PST)
Remember the good old days, when we
used to complain about cryptography
being export-restricted?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
>> Microsoft are not going to employ 50 people for a few months to go
>> through and optimise for RAM usage just to make you feel better.
>
> Indeed no - their job is to research new techniques for slowing software
> down as much as possible to boost sales of expensive new hardware.
> (Presumably this is why the hardware vendors love them so much...)
There job is to make money for the company. 50 people writing Word 2010
will make more money than 50 people optimising Word 2003. They can't help
it, it's all the customers that would prefer paying for a buggy and memory
hungry Word 2010 compared to a lean and mean Word 2003.
If you want to change soemthing, you need to convince the majority of
computer users NOT to buy the latest software for MS... Good luck.
> Now I'm puzzled - when I bought 1 GB of RAM for my PC, I had to pay
> several hundred pounds for it... Am I living in an alternate reality or
> something?
You're living in the past :-) Price of computer stuff goes down pretty
quickly - it's always surprising if you haven't looked for a while. I
bought a 64MB memory stick for £40 a few years back - now I was surprised
that a 1GB one is under £10.
>>> I mean, 20 *years* ago computers could do that instanteneously with a
>>> fraction of the RAM and CPU power. Why are we not coding like that any
>>> more??
>>
>> Because we (well, most of us) have better computers than we did 20 years
>> ago?
>
> And that's just it, isn't it?
>
> Why bother fixing the problem when you can just throw more hardware at it.
I think it's more the case of the software writers taking advantage of the
hardware improvements. If MS were still only offering an uber-streamlined
version of some old Win NT to run on our 3 GHz dual-core machines, I think
Linux and MacOS would be doing pretty well :-)
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
> I'm still surprised I can get a shaded textured 3D scene with shadows
> calculated refreshed faster than my monitor sync rate, but PowerPoint
> can't smoothly scroll text onto the screen without tearing it. :-?
Is that on XP? - I think that's because in the XP desktop you can't redraw
in sync with the monitor. This is fixed in Vista because (IIRC) everything
is double-buffered before being shown on the screen, just like in a
full-screen game that uses the 3D card.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New <dne### [at] san rr com> wrote:
> I'm merely
> pointing out that the errors you describe comes from treating "int"s as
> "integers". There's no such thing as an "unsigned integer", only an
> "unsigned int". It was a nit, nothing more. :-)
I didn't understand that.
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New <dne### [at] san rr com> wrote:
> > Integral types which support unlimited precision can *not* be as efficient
> > as CPU-register-sized integers
> Sure they can. I've used many computers where the unbounded arithmetic
> was just as fast as the bounded arithmetic when you stayed within bounds.
The only way for that is that the CPU has explicit support. In other
words, the CPU itself makes the bound checks at no additional cost in
clock cycles instead of the compiler having to add additional opcodes
which perform the checks.
AFAIK x86 processors do not have such a feature. The only thing an integer
overflow will do is to set a flag, which can then be checked with additional
opcodes, at the cost of additional clock cycles.
> > unless you explicitly tell to the compiler
> > that "this variable will always stay within these limits", in which case
> > you are already stuck with the same limitation as the C integral variables.
> Nope. Ada, for example, allows you to specify an upper size on variables
> and then actually *enforces* it, rather than just failing in bizarre
> ways like leaving you with the sum of two positives being negative. And
> Ada isn't known for its inefficiencies.
This would require even more CPU support than simply checking for a
register-sized integer overflow, as you would have to check if the value
goes out of arbitrarily-set boundaries (instead of just overflowing or
underflowing over). In other words, you would have to be able to tell
the CPU, at no clock cycle cost, "if this register ever gets a value
smaller than this or larger than this, throw an exception". I have hard
time believing any existing CPU has such a feature.
With normal CPUs the compiler would have to put a comparison and a
conditional jump after each single operation done to the variable, at the
cost of additional clock cycles. (Such a conditional jump might even mess
up the CPU's branching prediction logic, making it even more inefficient.)
Unless you give me an understandable and logical explanation of how these
kinds of checks could be implemented without making the code slower, I just
cannot believe it's possible.
> Errr, no. I've used plenty of CPUs that provide for traps on overflow,
> so the normal case is fast and when the value overflows, it traps out
> and switches to the slower bignums rather than giving the wrong answers.
I must admit that I'm not 100% sure if the x86 architecture supports
integer register overflow exceptions, but I'm quite certain it doesn't.
Sure, there are some other CPUs which do, but in practical terms that
doesn't help the average programmer too much.
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
scott wrote:
> There job is to make money for the company. 50 people writing Word 2010
> will make more money than 50 people optimising Word 2003. They can't
> help it, it's all the customers that would prefer paying for a buggy and
> memory hungry Word 2010 compared to a lean and mean Word 2003.
>
> If you want to change soemthing, you need to convince the majority of
> computer users NOT to buy the latest software for MS... Good luck.
Well, I don't stand a chance against the M$ marketing machine. Even
Apple doesn't - and they have money.
Sadly, M$ has managed to convince the general population that it is
"normal" for computers to not work propperly. If you bought a washing
machine and it didn't work properly, you'd take it back and demand a
refund. But when people buy a computer and the software on it doesn't
quite work properly, people just think this is "normal" and
"acceptable". This, truely, is M$'s contribution to the field of
computer science.
(It really makes me angry that M$ are allowed to broadcast adverts on TV
telling everybody how "good" they are. In my mind, this should be
illegal under the trade descriptions act. But anyway...)
>> Now I'm puzzled - when I bought 1 GB of RAM for my PC, I had to pay
>> several hundred pounds for it... Am I living in an alternate reality
>> or something?
>
> You're living in the past :-) Price of computer stuff goes down pretty
> quickly - it's always surprising if you haven't looked for a while. I
> bought a 64MB memory stick for £40 a few years back - now I was
> surprised that a 1GB one is under £10.
I *was* going to sell my old CPU on ebay. I mean, it's a moderately old
now, but I paid about £250 for it when I got it.
However, this was before I discovered that you can buy it new (exact
same model, clock speed, socket, everything) for £21.
£21. Retail boxed. With a warranty.
Who the hell is going to buy a second hand one?
>> And that's just it, isn't it?
>>
>> Why bother fixing the problem when you can just throw more hardware at
>> it.
>
> I think it's more the case of the software writers taking advantage of
> the hardware improvements. If MS were still only offering an
> uber-streamlined version of some old Win NT to run on our 3 GHz
> dual-core machines, I think Linux and MacOS would be doing pretty well :-)
There's a difference between "taking advantage of" and "wasting".
Do you even remember when WinXP first came out? And how everybody has
utterly horrified at the minimum hardware requirements to make it
function acceptably? It's been around so long now that everybody seems
to have forgotten that XP takes four times as much hardware to do the
same thing as older OSes managed to do quite happily...
(And then there's the sad fact that M$ doesn't know the difference
between "operating system" and "entertainment system". Even in the "pro"
version of XP, you still get lots of silly toys like games and video
players and so forth that I have to spend ages uninstalling. Surely what
most businesses actually want is a tiny OS to run their *real*
applications on top of...)
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Orchid XP v7 <voi### [at] dev null> wrote:
> Sadly, M$ has managed to convince the general population that it is
> "normal" for computers to not work propperly. If you bought a washing
> machine and it didn't work properly, you'd take it back and demand a
> refund. But when people buy a computer and the software on it doesn't
> quite work properly, people just think this is "normal" and
> "acceptable". This, truely, is M$'s contribution to the field of
> computer science.
To be fair, though, there's no such a thing as a bug-free (production
scale) operating system or software. All major operating systems during
the history of computing have had security and bug patches and upgrades.
Sure, some operating system have annually more security holes discovered
than others. However, big part of it is due to the popularity of those
operating systems. More popular -> more people use it -> more bugs are
discovered and more people hack those systems. Obscure unix-flavored
operating systems used in some obscure mainframes at the cellar of a few
dozen of obscure companies surely have also quite many security holes,
but they are not discovered because not many people use them nor try to
hack them.
OTOH, I must admit that there are some operating systems which, while
being relatively popular, have also surprisingly low security hole counts.
MacOS X is a good example. FreeBSD is also probably such an OS. Linux does
not score so well in this scale, but that's, again, at least in part due
to the popularity of linux among hackers. (IOW it may appear as linux had
more security holes than eg. FreeBSD, but that may be in part caused because
not so many people try to hack FreeBSD as Linux. In a way, this is actually
a good thing for Linux because more security holes are discovered and
patched that way.)
> Do you even remember when WinXP first came out? And how everybody has
> utterly horrified at the minimum hardware requirements to make it
> function acceptably? It's been around so long now that everybody seems
> to have forgotten that XP takes four times as much hardware to do the
> same thing as older OSes managed to do quite happily...
I wonder if you could even install XP in a 386, in any shape or form.
Any modern linux distro should be installable in a 386. Even X might work
if you use a superlight window manager, so you will not even be confined
to the command prompt.
(Why would anyone even want to install linux in a 386? Well, if you
have one laying around, it makes a supercheap firewall or small-scale ftp
server, for instance.)
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On Thu, 25 Oct 2007 17:29:37 -0400, Warp wrote:
> Any modern linux distro should be installable in a 386.
Should be, but many aren't because the installation kernels are compiled
for Pentium or later processors.
(Spent time doing such an install - put the hard drive in a "modern"
computer for the install, then moved it back to the 386)
Oh, and on the security front, NetWare pre-4.x. IIRC, not one security
patch ever needed to be issued, and it was very widespread back then (2.x
and 3.x days).
Jim
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp wrote:
> Darren New <dne### [at] san rr com> wrote:
>> I'm merely
>> pointing out that the errors you describe comes from treating "int"s as
>> "integers". There's no such thing as an "unsigned integer", only an
>> "unsigned int". It was a nit, nothing more. :-)
>
> I didn't understand that.
The C declaration of
unsigned int X;
does not allocate an integer variable.
You wouldn't need signed/unsigned conversion rules if you were working
with integers instead of int's.
--
Darren New / San Diego, CA, USA (PST)
Remember the good old days, when we
used to complain about cryptography
being export-restricted?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp wrote:
> Darren New <dne### [at] san rr com> wrote:
>>> Integral types which support unlimited precision can *not* be as efficient
>>> as CPU-register-sized integers
>
>> Sure they can. I've used many computers where the unbounded arithmetic
>> was just as fast as the bounded arithmetic when you stayed within bounds.
>
> The only way for that is that the CPU has explicit support.
Right. Which is why, a few months ago, I was claiming that processors
for the last few generations have been targeted at C code, rather than C
code being particularly good for general processors.
Processors already do this for floating point. I'm not sure why they
don't for integers any more, other than C not supporting it, so it's not
put in.
Of course, if your register size is such that you need to do
multi-instruction operations for usably-sized ints anyway (e.g., you're
on a 6502 CPU), you might as well, since it's all part of the same thing
anyway.
> AFAIK x86 processors do not have such a feature. The only thing an integer
> overflow will do is to set a flag, which can then be checked with additional
> opcodes, at the cost of additional clock cycles.
Right. But you hadn't qualified your statement to x86 processors.
> This would require even more CPU support than simply checking for a
> register-sized integer overflow, as you would have to check if the value
> goes out of arbitrarily-set boundaries (instead of just overflowing or
> underflowing over). In other words, you would have to be able to tell
> the CPU, at no clock cycle cost, "if this register ever gets a value
> smaller than this or larger than this, throw an exception". I have hard
> time believing any existing CPU has such a feature.
Burroughs B-series, for example. Since the CPU also checked array
bounds, it had that sort of math built in. I'm not sure if it's still
"existing", but IBM had versions of this in production not too long ago.
iAPXyaddamumble or something like that.
Modern processors running Ada add another check, yes. It can be less
efficient, unless you declare the variable to be a "modulo integer",
which then works like C's integers.
On the other hand, if I'm writing the code for a weapon, I'd rather have
it throw an exception than suddenly negate the amount it decides it
needs to rotate to fire towards the enemy. ;-)
> With normal CPUs the compiler would have to put a comparison and a
> conditional jump after each single operation done to the variable, at the
> cost of additional clock cycles.
I expect you can optimize out a lot of this, but yes. You can probably
do a lot by putting in smaller bounds checks near the beginning of a
routine, for example, to prove that nothing in the middle of a formula
goes out of bounds.
> Unless you give me an understandable and logical explanation of how these
> kinds of checks could be implemented without making the code slower, I just
> cannot believe it's possible.
As I said in the previous post, I've used a number of processors where
it's the case.
> Sure, there are some other CPUs which do, but in practical terms that
> doesn't help the average programmer too much.
I wasn't disputing an assertion that x86 architectures need more
processing. I was disputing that it's impossible in general and by
definition to have no overhead for multi-precision math traps.
I would also dispute that the default should be "do the wrong thing
fast". I would argue that the *default* should be "do the right thing,
and let me tell you where it's too slow." Premature optimization and
all that, you know.
C isn't the way it is because it's efficient that way. C is the way it
is because the compiler had to fit in 12K. The reason C has ++ and -- is
it was built into the addressing hardware of the machines C was first
implemented on, not because it's particularly good for programming.
--
Darren New / San Diego, CA, USA (PST)
Remember the good old days, when we
used to complain about cryptography
being export-restricted?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Orchid XP v7 wrote:
> Sadly, M$ has managed to convince the general population that it is
> "normal" for computers to not work propperly.
I agree. If you bought a new car and it randomly stalled once a month,
you'd be taking it in for warranty service.
On the other hand, computer programs are pretty much the most
complicated things ever created, almost be definition. If two chunks are
the same, you take one out. It's 100% complex.
> There's a difference between "taking advantage of" and "wasting".
Not for MS.
> most businesses actually want is a tiny OS to run their *real*
> applications on top of...)
Not especially. They want the applications to run. If the OS can support
getting those applications written faster or cheaper, then OS "bloat" is
a good thing.
--
Darren New / San Diego, CA, USA (PST)
Remember the good old days, when we
used to complain about cryptography
being export-restricted?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
> Sadly, M$ has managed to convince the general population that it is
> "normal" for computers to not work propperly. If you bought a washing
> machine and it didn't work properly, you'd take it back and demand a
> refund. But when people buy a computer and the software on it doesn't
> quite work properly, people just think this is "normal" and "acceptable".
> This, truely, is M$'s contribution to the field of computer science.
Yeh you keep going on about how bad MS are, but I just don't see this. Our
whole company (as do many others) run on MS servers and MS run desktops. We
really don't see the level of problems you describe. Last problem we had in
the office was when IT installed a buggy print driver on the print server,
it caused Word (well, any application that had print functionality) to crash
randomly. Of course everyone blamed MS, but then IT fixed the print driver
and everything has been fine since. I don't even remember the last time
Word or any Office program crashed.
> I *was* going to sell my old CPU on ebay. I mean, it's a moderately old
> now, but I paid about £250 for it when I got it.
>
> However, this was before I discovered that you can buy it new (exact same
> model, clock speed, socket, everything) for £21.
Well at least you checked the price. Some people just say "bought new for
X, will sell for X/2", when in reality it's worth X/10 or 20.
> £21. Retail boxed. With a warranty.
>
> Who the hell is going to buy a second hand one?
You'd be surprised, second hand prices of computer components seem to sell
at a fraction under the new price. I guess there are a lot of people who
are looking to save just a few £££s by getting second hand. And it's not
like most other things where they look old or don't work properly, a CPU is
a CPU, it either works or it doesn't.
> Do you even remember when WinXP first came out? And how everybody has
> utterly horrified at the minimum hardware requirements to make it function
> acceptably? It's been around so long now that everybody seems to have
> forgotten that XP takes four times as much hardware to do the same thing
> as older OSes managed to do quite happily...
If it does the same thing, why are you using it? Why does anyone use it if
it does the same thing as previous versions?
> (And then there's the sad fact that M$ doesn't know the difference between
> "operating system" and "entertainment system". Even in the "pro" version
> of XP, you still get lots of silly toys like games and video players and
> so forth that I have to spend ages uninstalling. Surely what most
> businesses actually want is a tiny OS to run their *real* applications on
> top of...)
Gee, I'd hate to work at your company where the IT people don't even let you
watch videos or play an odd game of Internet Reversi during a break.
Actually some of our customers send us video clips of problems sometimes, it
would be a bit embarrassing if we had to explain how we chose an IT system
that didn't allow us to watch them...
People also use WinXP Pro at home you know, I think everyone in my family
and even my gf on her laptop has the Pro edition.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
> (Why would anyone even want to install linux in a 386? Well, if you
> have one laying around, it makes a supercheap firewall or small-scale ftp
> server, for instance.)
If you want to go with MS for this sort of thing then people use DOS. My
camera uses DOS as an OS, as does the oven we have here in the lab - and it
even does graphics :-) Admittedly you can't expect to run Word2003 on it,
but for the sort of thing you probably want to do with a 386 it would be
fine.
Or you could install Win95 or Win3.1 if you really wanted Windows.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
> I agree. If you bought a new car and it randomly stalled once a month,
> you'd be taking it in for warranty service.
It would probably be a software problem :-)
> On the other hand, computer programs are pretty much the most complicated
> things ever created, almost be definition. If two chunks are the same, you
> take one out. It's 100% complex.
Yep, even on something relatively much simpler, like the radio in a car, it
is the software that causes the biggest headaches. We can develop and test
the hardware usually in two or three 6 month blocks, but it always the
software that requires *way* more time and is usually the reason for
requested hardware changes, extra builds and delays.
If MS wanted this level of reliability on their software, which is 10s or
100s times more complex, it would take them forever to release anything. It
just wouldn't work, they would go bankrupt.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New <dne### [at] san rr com> wrote:
> The C declaration of
> unsigned int X;
> does not allocate an integer variable.
> You wouldn't need signed/unsigned conversion rules if you were working
> with integers instead of int's.
I may be unusually dense here, but I still can't understand.
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
scott <sco### [at] laptop com> wrote:
> > (Why would anyone even want to install linux in a 386? Well, if you
> > have one laying around, it makes a supercheap firewall or small-scale ftp
> > server, for instance.)
> If you want to go with MS for this sort of thing then people use DOS.
Good luck trying to log in and configuring it remotely. Or running any
server software in it, for that matter.
> Or you could install Win95 or Win3.1 if you really wanted Windows.
Win95 in a 386? Hardly.
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
And lo on Wed, 24 Oct 2007 17:56:57 +0100, Jim Henderson
<nos### [at] nospam com> did spake, saying:
> On Wed, 24 Oct 2007 12:48:01 -0400, Jim Henderson wrote:
>
>> The problem doesn't
>> start in the software development houses, it starts at school when
>> students are learning how to code and are taught bad habits from the
>> start.
>
> As an example, I remember a core component of a popular server OS that
> would, under certain circumstances, display negative disk space free.
On a similar note I see that the new PS3 exclusive Ratchet & Clank may
fail to install if you have *too much* hard drive space, the suggested
solution is too add around 500Mb (Why 500?) as one person commented "I
love how in this day and age of downloadable patches, QA for games has
gone by the wayside."
--
Phil Cook
--
I once tried to be apathetic, but I just couldn't be bothered
http://flipc.blogspot.com
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
>> > (Why would anyone even want to install linux in a 386?
>
>> If you want to go with MS for this sort of thing then people use DOS.
>
> Good luck trying to log in and configuring it remotely. Or running any
> server software in it, for that matter.
Things like cameras and lab equipment don't really need that. Maybe that's
one reason why cameras use USB and not LAN or WLAN - it's just too
hard/impossible to get a network stack on DOS?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
scott <sco### [at] laptop com> wrote:
> it's just too
> hard/impossible to get a network stack on DOS?
OTOH, why bother when you can instead install an OS which is specifically
designed for that?
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
>> it's just too
>> hard/impossible to get a network stack on DOS?
>
> OTOH, why bother when you can instead install an OS which is specifically
> designed for that?
Dunno, ask the people at Canon who make the digital cameras...
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
scott <sco### [at] laptop com> wrote:
> >> it's just too
> >> hard/impossible to get a network stack on DOS?
> >
> > OTOH, why bother when you can instead install an OS which is specifically
> > designed for that?
> Dunno, ask the people at Canon who make the digital cameras...
Canon develops network stacks for DOS?
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp nous apporta ses lumieres en ce 2007/10/26 06:08:
> Darren New <dne### [at] san rr com> wrote:
>> The C declaration of
>> unsigned int X;
>> does not allocate an integer variable.
>
>> You wouldn't need signed/unsigned conversion rules if you were working
>> with integers instead of int's.
>
> I may be unusually dense here, but I still can't understand.
>
For most of us, int == INTeger!
The coice of using "int", an abbreviation, instead of "integer" is a choice of
the conceptors of the language, probably to allows you to save a few keystrokes.
--
Alain
-------------------------------------------------
Advertisements contain the only truths to be relied on in a newspaper.
Thomas Jefferson
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp nous apporta ses lumieres en ce 2007/10/25 17:29:
>> Do you even remember when WinXP first came out? And how everybody has
>> utterly horrified at the minimum hardware requirements to make it
>> function acceptably? It's been around so long now that everybody seems
>> to have forgotten that XP takes four times as much hardware to do the
>> same thing as older OSes managed to do quite happily...
>
> I wonder if you could even install XP in a 386, in any shape or form.
> Any modern linux distro should be installable in a 386. Even X might work
> if you use a superlight window manager, so you will not even be confined
> to the command prompt.
>
> (Why would anyone even want to install linux in a 386? Well, if you
> have one laying around, it makes a supercheap firewall or small-scale ftp
> server, for instance.)
>
During the Vista's beta testing, some foolhardy guy managed to install AND run
Vista on a 386 (or maybe even only a 286) with only 16Mb of RAM and a large HD.
Must have been slow as HELL, and trashing the drive non-stop, but it DID work,
if only "sort of"!
--
Alain
-------------------------------------------------
You know you've been raytracing too long when you find yourself daydreaming for
hours on end what it would be like to go back in time and give Michealangelo a
decent raytracer.
Taps a.k.a. Tapio Vocadlo
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Orchid XP v7 nous apporta ses lumieres en ce 2007/10/25 14:18:
> Do you even remember when WinXP first came out? And how everybody has
> utterly horrified at the minimum hardware requirements to make it
> function acceptably? It's been around so long now that everybody seems
> to have forgotten that XP takes four times as much hardware to do the
> same thing as older OSes managed to do quite happily...
>
Do you remember when windows 3 came out? Peoples complained that it took to much
space and could'nt run from floppys. A little after HDs started to become
afordable and to come preinstalled on every PCs. Many said that is was horribly
huge and bloated.
Do you remember when windows 95 came out? Peoples complained about how much RAM
it needed and that many video cards where not up to the task. Not just that, but
LOOK at all the disk space it needs!!! Many said that is was horribly huge and
bloated.
Similar comments where issued when windows 98 came out!
I saw this comment: "Windows Vista is like Windows 95, 12 years later."
Take a look at Apple's products. They to, received similar comments with each
new OS releases. Try runing MacOS 5 on the latest G5! Or MacOS X on a PowerPC
(prior to G2)!
The same can be sayd about Unix/Linux.
The thing is that as the hardware evolve, OS and softwares do the same, and
backware compatibility can't be maintained/guaranted for more that 1 or 2
hardware generations.
As the hardware can do more, the OS follows suit and DO more. As rhe RAM become
cheaper, softwares grow to use that RAM to do more.
--
Alain
-------------------------------------------------
Bet my floppy's bigger than yours.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On Fri, 26 Oct 2007 12:08:57 +0200, Warp <war### [at] tag povray org> wrote:
> Darren New <dne### [at] san rr com> wrote:
>> The C declaration of
>> unsigned int X;
>> does not allocate an integer variable.
>
>> You wouldn't need signed/unsigned conversion rules if you were working
>> with integers instead of int's.
>
> I may be unusually dense here, but I still can't understand.
I am fairly certain he simply means that the range of 'int' in C++ is only
a subset of Z (the set of integers). Similarly, the range of 'unsigned
int' is only a subset of N. The data types in C++ do not model Z or N,
even though they are superficially similar in some respects.
--
FE
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Alain wrote:
> Do you remember when windows 3 came out?
No. That was back before I started using PCs.
> Do you remember when windows 95 came out? Peoples complained about how
> much RAM it needed and that many video cards where not up to the task.
> Not just that, but LOOK at all the disk space it needs!!! Many said that
> is was horribly huge and bloated.
Can't help feeling they'd be right...
> The thing is that as the hardware evolve, OS and softwares do the same,
> and backware compatibility can't be maintained/guaranted for more that 1
> or 2 hardware generations.
> As the hardware can do more, the OS follows suit and DO more. As rhe RAM
> become cheaper, softwares grow to use that RAM to do more.
The underlying assumption seems to be that to do more requires more
hardware.
Sure, manipulating an 8 megapixel photo takes a lot of RAM. But what
about while you're *not* manipulating an 8 megapixel photo? Why should
it require any more RAM then? (Not to mention CPU time...)
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Fredrik Eriksson <noo### [at] nowhere com> wrote:
> I am fairly certain he simply means that the range of 'int' in C++ is only
> a subset of Z (the set of integers).
I would like to see the compiler which manages to handle the entire set
of integers.
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
scott wrote:
>> Sadly, M$ has managed to convince the general population that it is
>> "normal" for computers to not work propperly. If you bought a washing
>> machine and it didn't work properly, you'd take it back and demand a
>> refund. But when people buy a computer and the software on it doesn't
>> quite work properly, people just think this is "normal" and
>> "acceptable". This, truely, is M$'s contribution to the field of
>> computer science.
>
> Yeh you keep going on about how bad MS are, but I just don't see this.
> Our whole company (as do many others) run on MS servers and MS run
> desktops. We really don't see the level of problems you describe. Last
> problem we had in the office was when IT installed a buggy print driver
> on the print server, it caused Word (well, any application that had
> print functionality) to crash randomly. Of course everyone blamed MS,
> but then IT fixed the print driver and everything has been fine since.
> I don't even remember the last time Word or any Office program crashed.
I don't know when Word last crashed either. This is because it happens
so frequently that our users don't even bother calling me any more.
(Because they know I can't do anything to make it stop crashing.)
Similarly, of the 50 PCs we have, every single week at least one of them
suffers a blue screen of death. (That's not counting the PC at my desk -
I think *that* one is actually faulty...)
Our servers, fortunately, *are* more or less reliable. (Except for that
one I have to reboot every 3 months... Every day it runs slightly
slower, until eventually I have to reboot it to make it service user
requests. Don't know what's up with that.)
Don't even get me started about printers...
(Yes, naff drivers are usually to blame. But I still maintain that it's
M$'s attitude of "quality isn't important" that makes people think they
can get away with selling hardware with naff drivers...)
>> I *was* going to sell my old CPU on ebay. I mean, it's a moderately
>> old now, but I paid about £250 for it when I got it.
>>
>> However, this was before I discovered that you can buy it new (exact
>> same model, clock speed, socket, everything) for £21.
>
> Well at least you checked the price. Some people just say "bought new
> for X, will sell for X/2", when in reality it's worth X/10 or 20.
As I understand it, AMD currently can't touch Intel for performance, so
they're going mental slashing prices instead...
>> Do you even remember when WinXP first came out? And how everybody has
>> utterly horrified at the minimum hardware requirements to make it
>> function acceptably? It's been around so long now that everybody seems
>> to have forgotten that XP takes four times as much hardware to do the
>> same thing as older OSes managed to do quite happily...
>
> If it does the same thing, why are you using it? Why does anyone use it
> if it does the same thing as previous versions?
Because almost no software will run on it any more.
Seriously. I'd still be using WinNT if it wasn't for that.
>> (And then there's the sad fact that M$ doesn't know the difference
>> between "operating system" and "entertainment system". Even in the
>> "pro" version of XP, you still get lots of silly toys like games and
>> video players and so forth that I have to spend ages uninstalling.
>> Surely what most businesses actually want is a tiny OS to run their
>> *real* applications on top of...)
>
> Gee, I'd hate to work at your company where the IT people don't even let
> you watch videos or play an odd game of Internet Reversi during a break.
> Actually some of our customers send us video clips of problems
> sometimes, it would be a bit embarrassing if we had to explain how we
> chose an IT system that didn't allow us to watch them...
Well, clearly you work in a different business sector than me then. ;-)
The purpose of our PCs is to run Outlook, Word and Excell, and also the
specialist lab software we use. If it weren't for these few things, we
wouldn't even need computers at all. (Would make my job a lot easier.
Oh, wait...)
> People also use WinXP Pro at home you know, I think everyone in my
> family and even my gf on her laptop has the Pro edition.
Yes, I think that's mainly due to the silly restrictions in XP Home.
It'll be interesting to see what happens with Vista. (I forget how many
versions of that there are...)
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|
 |