So, Microsoft can lower its price by more than 20% without becoming unprofitable... Should the way they operate on the software market be considered fair in that case? If they are or were able to run such margins they did not have a lot of concurrents, did they? Why?
How does this affect their position as it comes down to claims about profit they lost from people using illegal copies of their software? If they ask 20% too much, they might expect for example 20% of the public being not too willing to pay.
Okay, I knew it would be offtopic, but: C o m m e n t M o d e r a t i o n 1 : 0 0 , 0 1 J a n u a r y 1 9 7 0
hhhhmmmmm.. I wasn't even born at that time! So how should I have posted it?
The FBI realized they are powerless if it comes down to fighting crime and terrorism and now decided to change their core business - make money from copyrights on crappy stories.
I'm the last one to deny that possible buffer exploits are bugs and simply must be solved.
Memory... Agreed, but the implementation will be very machine dependent, and the i386 simply offers a solution to prevent any access for certain privilage levels.
Writable-executable... The JIT issue: that seems strange to me. First of all I'd rather change memory permissions from rw- to --x after the code has been assembled by the JIT compiler than writing it directly into rwx memory. Second java has no way of directly accessing memory, other than perhaps atomic attributes inside classes. There is no way of casting a reference to a class into any integer kind of value and thus gaining the possibility to mess with it. AFAIK buffer exploits are hardly possible in java programs, but I can image things go wrong if you send a naive/buggy program something huge causing memory problems.
Even... Under very rare conditions. I know some systems map IO to memory and I can image it would be usefull in such a case. But for most deamons and user programs I don't think it's very usefull.
I still think that the lacking combinations of access rights should be easily circumvented, and therefore a useless and in the case of any ?wx simply are dangerous.
Sorry. I don't get it.
A short and rough interpretation of the 80386 Programmer's Reference Manual, (c) 1986 by Intel.
Memory access to segments is secured using descriptors.
The i386 distinguishes code and data segments
(by segments I mean a segment with a certain descriptor).
A stack segment is a data segment.
CODE - A code segment can be executed (loaded into CS).
A code segment can be set to non 'readable'
(to prevent it form being loadable into DS,ES,FS or GS).
A code descriptor does not allow write access to a code segment.
DATA - A data segment is readable and can be set to read/write access. A data descriptor does not allow execution (it cannot be loaded into CS).
These definitions themselves leave very little room for insecure memory management. But: one or more descriptors can be used to describe the same piece of physical memory and so it is possible to define code segments which can be written to.
Privilege levels are available in 4 levels. You can secure memory to be accessed only for processes of privilege level 0..3, 1..3, 2 and 3 or 3 only. For example: 0=kernel, 1=shared libraries/drivers, 2='secured' program code, 3=program/thread code.
IMHO this gives loads of opportunities to secure memory access on a i386 box. I assume it has something to do with the flat memory model used combined with shared address space and problems matching the PROT_EXEC, PROT_READ, PROT_WRITE model to the i386 implementation. A short scetch: Available --x Code r-x Code Readably for data descriptors r-- Data Readonly rw- Data Read/Write access Not available (IMHO insecure or useless) --- Useless, inaccessebility is done by privilege levels. -w- Useless, does not make sense -wx Insecure rwx Insecure
Good enough techno babble on the i386 architecture.
IMHO a general possible solution to make buffer overflow based attacks harder, if not impossible, would be seperating the return address stack from the stack containing local data, usually these are on one and the same stack.
Just in case one might think...
on
Potato Bazookas
·
· Score: 1
In case one might think such a thing, I am not related in any way to this site and I also do not share the sense of humour or ideas on it.
Sooner or later Iraq will have to prove they don't own potatoes.
Building instructions
on
Potato Bazookas
·
· Score: 4, Informative
For anyone interested in doing this too,
building instructions can be found here
Unbelievably depressing!
on
Immortal Code
·
· Score: 2, Informative
Yes. I find it very depressing. It's because of human nature. I'm not talking about you, me, or anyone in particular but individuals in general. It shows that we are a disgusting bunch of raping, stealing, exploiting, killing and reaping vultures. We do nearly anything if we might benefit from it. It doesn't really matter if it comes down to intellectual property, animals, geologic resources or just the power to rule. We consume and thereby destroy.
Immortality might be achieved by sharing. Explain why widely published and available algorithms or OSS products and unpatented/copyrighted work outlasts all kind of proprietary and strongly protected software. If an individual gets lost, its properties get lost, just by getting forgotten or falling into the wrong hands, anyway it's lost for the public. In the end the public should decide what is usefull. That's good because only some (brilliant) individuals introduce new ideas and the (average) public should adopt or abandon. That's the way traditions and culture work.
I'm not against copyright or patent. Copyright was invented only to share visions respecting the one who came up with them. Patents were invented only to prevent people with big resources to produce someones invention at large scale and so run away with the possible profit - correct me if I'm wrong; I always seem to confuse copyright, trademark and patent. Both are very good socialistic ideas, but in a liberal world they don't work. I could simply hire someone to 'steal' ideas. Put a copyright or patent on them before their creator does. And that's what happens at large scale, most contracts disown programmers/developers from their intellectual property involved during their employment.
Nowadays copying and sharing of ideas has become very cheap. No wonder owners of valuable ideas are scared to share them. But... sharing them is the only way to let them become immortal. If - for example - Microsoft looses its strong ruler it will crumble. Nobody (except those who were involved) will know anything about the structure of the OS. There will be nobody able to adapt the products to new techniques and ideas, because they will be prevented by copyrights and patents.
We have to deal with a new phenomenon, digital media. The current opinion on 'rights' will have to change in order to get software and information industrie really productive and continues.
Yes, they are blatantly obvious, but so is cutting when you have a knife.
Funny thing about these is that the assignment statements map one on one with machinecode instructions found on the CPU's of the old PDP-11, on which C and Unix were born.
And there are brilliant algorithm's for greatest common divizor calculation, multiplication and divizion... Not to mention Bresenham's Algorithm, which is a very elegant way to draw lines. It's very usefull too for changing sampling rates when writing music software.
But an important point the article is focused on, is what makes code immortal... It seems the mortality of code is controlled by the greedyness of industry. Companies willing to kill each other for reaping and stealing code. Vultures! Well if code is free you cannot steal it. If it lives everywhere you can't kill. Open Source Software.
(in general use a lot of blahblah and don't show what you're doing)
make a big picture of all what's wrong
try to fix everything at once (dripping nose, broken legs, breast enlargements, etc)
determine whether or not thing have gone well is the patients problem (hey my?? oh, cute, well let's make em even bigger)
leave your patient, with a lot of (new) problems
not so eXtreme Medicine -> eXtreme Programming:
(in general use a little blahblah and show what you're doing)
focus on the most important issues (broken legs)
make sure you can see if it's fixed
fix the most important issue, and continue with the next important thing (dripping nose)
disencourage breat enlargement
Yes, it means that you need very good developers for XP. These people must be able to do good designing to have the big picture in mind and they must be able to judge quality.
Do they exist? Yes...
Many? Enough, but there is an awfull lot of very crappy developers out there.
I think we must try to get rid of wanting to design and plan every little thing in front and then find out stuff doesn't work ending up running out of time and in the end having noone willing to pay for all useless efforts.
Although many people don't believe in XP it is a way to accomplish development in such a way you do get deliverables. Maybe it does not improve speed but it does improve quality and reduce risk.
So any book which is able to explain the pro's of XP and open eyes of non-believers is good.
If we look at HTML the FRAMESET/FRAME construct has become part of the
HTML 4.0
specification in 1998.
Officially both
HTML 2.0
('95) and
HTML 3.2
('97) did not support frames.
I think however this has been done because both IE and Netscape did support frames for a while at that time.
It's obvious that similar concepts and implementations of what they patented
have been done before...
Furthermore I do not understand the way they seem to mix values in text and tags.
I mean
5.<plus 7/>.<divided_by 3/>
simply scares the hell out of me. I mean
<int value="(5+7)/3"/>
or
<math divide_by="3"><math add="7">5</math></math>
would be acceptable.
These would readable or exploit the structure of XML.
I do not want to offend anyone by any means,
but what on earth are these Water(TM) people think they are doing?
I like C.
I like Java.
I like C++, LISP, Perl, Prolog and Python.
I even like.BAT (4dos), sh, HTML and XML.
I even can see the use of Visual Basic,
but why would anyone want to use XML to write code?
To optimize it using XSLT? Or only to <BUZZ>blah</BUZZ>?
This is not a language.
This is slang.
Being fluent in it characterizes savages.
Agreed. Even if the EMP does not affect flesh it's very dangerous. Normal life is based on a big lot of electronic devices. Cars have electronic injection and steering correction, you cellphone will burn a hole in your pocket and I do not even want to think about what this does to hospitals.
Anyway I wish the US luck with the development of such weaponry. You have the biggest cities and most electronic equipment. Looks a little suicidal to me.
I'd like to correct that, any thing that is living or has lived:
In science, Organic can be a biological or chemical term. In Biology it means any thing that is living or has lived. The opposite is Non-Organic. In Chemistry, an Organic compound is one containing Carbon atoms. The opposite term is Inorganic.
I thought the US allowed some people (military personel?) to vote using internet. The project costs were high (millions) while the number of people served (a few thousand) was very small.
I wonder what - except from electric power - systems will consume in the near future. I try to feed my notebook bread and cheese, but it doesn't seem to be very fond of it.
Or... organic. What kind of life are we talking here? Do they kill animals to create these displays? Damn, I know some people think it's stupid, but I'm a vegetarian.
So, Microsoft can lower its price by more than 20% without becoming unprofitable... Should the way they operate on the software market be considered fair in that case? If they are or were able to run such margins they did not have a lot of concurrents, did they? Why?
How does this affect their position as it comes down to claims about profit they lost from people using illegal copies of their software? If they ask 20% too much, they might expect for example 20% of the public being not too willing to pay.
Okay, I knew it would be offtopic, but:
C o m m e n t M o d e r a t i o n 1 : 0 0 , 0 1 J a n u a r y 1 9 7 0
hhhhmmmmm.. I wasn't even born at that time! So how should I have posted it?
Partially exactly my point ;-)
Actually the Anynonmous Trolled Coward meant the Columbia Space shuttle is in trouble... Total loss of communication, breaks apart, etc T R A G E D Y .
The FBI realized they are powerless if it comes down to fighting crime and terrorism and now decided to change their core business - make money from copyrights on crappy stories.
I'm the last one to deny that possible buffer exploits are bugs and simply must be solved.
I still think that the lacking combinations of access rights should be easily circumvented, and therefore a useless and in the case of any ?wx simply are dangerous.
They'll give NASA the 'finger'.
HUH!?
Sorry. I don't get it. A short and rough interpretation of the 80386 Programmer's Reference Manual, (c) 1986 by Intel.
Memory access to segments is secured using descriptors. The i386 distinguishes code and data segments (by segments I mean a segment with a certain descriptor). A stack segment is a data segment.
CODE - A code segment can be executed (loaded into CS). A code segment can be set to non 'readable' (to prevent it form being loadable into DS,ES,FS or GS). A code descriptor does not allow write access to a code segment.
DATA - A data segment is readable and can be set to read/write access. A data descriptor does not allow execution (it cannot be loaded into CS).
These definitions themselves leave very little room for insecure memory management. But: one or more descriptors can be used to describe the same piece of physical memory and so it is possible to define code segments which can be written to.
Privilege levels are available in 4 levels. You can secure memory to be accessed only for processes of privilege level 0..3, 1..3, 2 and 3 or 3 only. For example: 0=kernel, 1=shared libraries/drivers, 2='secured' program code, 3=program/thread code.
IMHO this gives loads of opportunities to secure memory access on a i386 box. I assume it has something to do with the flat memory model used combined with shared address space and problems matching the PROT_EXEC, PROT_READ, PROT_WRITE model to the i386 implementation. A short scetch:
Available
--x Code
r-x Code Readably for data descriptors
r-- Data Readonly
rw- Data Read/Write access
Not available (IMHO insecure or useless)
--- Useless, inaccessebility is done by privilege levels.
-w- Useless, does not make sense
-wx Insecure
rwx Insecure
Good enough techno babble on the i386 architecture.
IMHO a general possible solution to make buffer overflow based attacks harder, if not impossible, would be seperating the return address stack from the stack containing local data, usually these are on one and the same stack.
In case one might think such a thing, I am not related in any way to this site and I also do not share the sense of humour or ideas on it.
Sooner or later Iraq will have to prove they don't own potatoes.
For anyone interested in doing this too, building instructions can be found here
Yes. I find it very depressing. It's because of human nature. I'm not talking about you, me, or anyone in particular but individuals in general. It shows that we are a disgusting bunch of raping, stealing, exploiting, killing and reaping vultures. We do nearly anything if we might benefit from it. It doesn't really matter if it comes down to intellectual property, animals, geologic resources or just the power to rule. We consume and thereby destroy.
Immortality might be achieved by sharing. Explain why widely published and available algorithms or OSS products and unpatented/copyrighted work outlasts all kind of proprietary and strongly protected software. If an individual gets lost, its properties get lost, just by getting forgotten or falling into the wrong hands, anyway it's lost for the public. In the end the public should decide what is usefull. That's good because only some (brilliant) individuals introduce new ideas and the (average) public should adopt or abandon. That's the way traditions and culture work.
I'm not against copyright or patent. Copyright was invented only to share visions respecting the one who came up with them. Patents were invented only to prevent people with big resources to produce someones invention at large scale and so run away with the possible profit - correct me if I'm wrong; I always seem to confuse copyright, trademark and patent. Both are very good socialistic ideas, but in a liberal world they don't work. I could simply hire someone to 'steal' ideas. Put a copyright or patent on them before their creator does. And that's what happens at large scale, most contracts disown programmers/developers from their intellectual property involved during their employment.
Nowadays copying and sharing of ideas has become very cheap. No wonder owners of valuable ideas are scared to share them. But... sharing them is the only way to let them become immortal. If - for example - Microsoft looses its strong ruler it will crumble. Nobody (except those who were involved) will know anything about the structure of the OS. There will be nobody able to adapt the products to new techniques and ideas, because they will be prevented by copyrights and patents.
We have to deal with a new phenomenon, digital media. The current opinion on 'rights' will have to change in order to get software and information industrie really productive and continues.
In my experience compilers (nowadays) are quite good at deciding which to use: .
n % 8 or n & 0x7
and stuff like:
a + a, 2 * a or a
I'm sure it does.
Unaware of the fact that the idea existed, I've developed the same mechanism for graphics routines back in '90.
Besides from the optmized example I think small pieces of C like these are quite immortal:
Yes, they are blatantly obvious, but so is cutting when you have a knife. Funny thing about these is that the assignment statements map one on one with machinecode instructions found on the CPU's of the old PDP-11, on which C and Unix were born.And there are brilliant algorithm's for greatest common divizor calculation, multiplication and divizion... Not to mention Bresenham's Algorithm, which is a very elegant way to draw lines. It's very usefull too for changing sampling rates when writing music software.
But an important point the article is focused on, is what makes code immortal... It seems the mortality of code is controlled by the greedyness of industry. Companies willing to kill each other for reaping and stealing code. Vultures! Well if code is free you cannot steal it. If it lives everywhere you can't kill. Open Source Software.
IMHO you mix things up, sorry.
eXtreme Medicine -> not so eXtreme Programming:
(in general use a lot of blahblah and don't show what you're doing)
make a big picture of all what's wrong
try to fix everything at once (dripping nose, broken legs, breast enlargements, etc)
determine whether or not thing have gone well is the patients problem (hey my?? oh, cute, well let's make em even bigger)
leave your patient, with a lot of (new) problems
not so eXtreme Medicine -> eXtreme Programming:
(in general use a little blahblah and show what you're doing)
focus on the most important issues (broken legs)
make sure you can see if it's fixed
fix the most important issue, and continue with the next important thing (dripping nose)
disencourage breat enlargement
Yes, it means that you need very good developers for XP. These people must be able to do good designing to have the big picture in mind and they must be able to judge quality.
Do they exist? Yes...
Many? Enough, but there is an awfull lot of very crappy developers out there.
I think we must try to get rid of wanting to design and plan every little thing in front and then find out stuff doesn't work ending up running out of time and in the end having noone willing to pay for all useless efforts.
Although many people don't believe in XP it is a way to accomplish development in such a way you do get deliverables. Maybe it does not improve speed but it does improve quality and reduce risk.
So any book which is able to explain the pro's of XP and open eyes of non-believers is good.
If we look at HTML the FRAMESET/FRAME construct has become part of the HTML 4.0 specification in 1998. Officially both HTML 2.0 ('95) and HTML 3.2 ('97) did not support frames. I think however this has been done because both IE and Netscape did support frames for a while at that time.
It's obvious that similar concepts and implementations of what they patented have been done before...
Why don't they simply download Kazaa? It has been proven to be very usefull for sharing all kinds of information, no matter where and how one got it.
The samples below come from the Waterland website. ConsiceXML violates XML specifications the same way HTML does.
doc/fast_intro.html
Furthermore I do not understand the way they seem to mix values in text and tags. I mean
simply scares the hell out of me. I mean or would be acceptable. These would readable or exploit the structure of XML. I do not want to offend anyone by any means, but what on earth are these Water(TM) people think they are doing?I like C. I like Java. I like C++, LISP, Perl, Prolog and Python. I even like .BAT (4dos), sh, HTML and XML.
I even can see the use of Visual Basic,
but why would anyone want to use XML to write code?
To optimize it using XSLT? Or only to <BUZZ>blah</BUZZ>?
This is not a language.
This is slang.
Being fluent in it characterizes savages.
$ prn < hottie.3ds
error: Printer on fire!
Agreed. Even if the EMP does not affect flesh it's very dangerous. Normal life is based on a big lot of electronic devices. Cars have electronic injection and steering correction, you cellphone will burn a hole in your pocket and I do not even want to think about what this does to hospitals.
Anyway I wish the US luck with the development of such weaponry. You have the biggest cities and most electronic equipment. Looks a little suicidal to me.
Hm. Must have been some other country. Reason to use internetvoting then was that these people were not in the country at the time they had to vote.
I'd like to correct that, any thing that is living or has lived:
In science, Organic can be a biological or chemical term. In Biology it means any thing that is living or has lived. The opposite is Non-Organic. In Chemistry, an Organic compound is one containing Carbon atoms. The opposite term is Inorganic.
I thought the US allowed some people (military personel?) to vote using internet. The project costs were high (millions) while the number of people served (a few thousand) was very small.
I wonder what - except from electric power - systems will consume in the near future. I try to feed my notebook bread and cheese, but it doesn't seem to be very fond of it.
Or... organic. What kind of life are we talking here? Do they kill animals to create these displays? Damn, I know some people think it's stupid, but I'm a vegetarian.