wtf ?
voize enabled keyboard. like in 'ok keyboard, start typing' ....
and what is that trackball doing there. i thougnht this thing was touch ?
804 publicly visible posts • joined 13 Aug 2006
'Chagrin of the fanbois'. I thought they were so happy with their OSX they shouldn't need Win7 on their gold plated desktop ornament..
Oh wait , that's right, there's no apps for that right ?
I remember the 'old days' (before OSx) of mac. The fanbois were ranting and raving how their os was so much better than all the 'Microsoft' stuff out there. And when you asked : and what applications do you use with it. Microsoft word, Microsoft excel , Microsoft powerpoint , microsoft internet exploder (apple didn't have a browser back then)... que 'eye roll' ...
Buy our tv set, so we can feed you ads we get money for ... and when you look at the program guide we will suggest programs to you ( of coure the one that get the most ad revenue fur us we will put at the top)
oh, and you can't store any data locally. so we have gone back to the mainframe eras of the 60's and 70's... only with smart terminals..
no thanks. i'll stick to a normal computer, so i can access my data even when not on-line.
we are talking flash memory here for use in a lot of embedded application ( camera's , pictureframes etc ... )
there is multiple problems
- computing power is limited ... all these device run off batteries. the simpler the system is to implement in code the better
- no long filenames required.
- wear leveling : fat is very simple to accomodate wear-leveling wise. ntfs not so. extx and journaling : very hard ...
Fat is simple: find an empty spot , drop data , update pointer. if next block is unavailable : throw remainder in another empty blok and change link pointer. forget framentation. flash memory is 'transient' in this kind of devices anyway.
FAt is ideal to map on flash. Flash by definition uses a 'paging' mechanism. whenever you write to flash you have to perform a sector erase first. So even changing 1 byte in a sector requires a full sector read to buffer, sector erase and rewrite. poof there is your wear-leveling ...
in FAT you can specifiy the sector size. by using the exact same 'logical' sector size as the physical flash sector size you solve the bulk of the wear-leveling problem.
a sector is either empty or in use. The kind of devices they are targeting for exFAT do not perform bit or byte level accesses. They do bulk access. You find an empty sector and start writing. at the end of the sector you place the sector where the next block is written . And so on. when you are done you update a lookup table. In practice the real wear leveling needs only to be done for the actual File allocation table. that is the only element that sees byte level edits. In flash they do that by cycling the location of the table. The previous table is marked as 'old' and they simply write a complete new one. there are tally counters that keep track of which sectors have been accesses how many times. the flash controller uses that to decide where it will throw the next block.
Simply put : FAt may be a POS filesystem but it is very simple to implement and fits the way flash memory works in the first place. And no , flash was not developed with FAt in mind ...
it had a hardware write protect switch i would buy it in an instant.
Install windows , move documents and settings to the mecha drive (D).
install programs to mecha drive. Once machine is config'd with the programs i use daily flick the switch.
Then let all the crap out there try to infect the installation... it won't work.
Guaranteed clean boot every time.
Or : here is a different aproach : one 'golden' install on write protected flash. Option to 'nuke' the working flash disk from the golden install. Should be possible using a tool like norton ghost.
I always wondered why nobody implements such an approach.
It would require splitting the registry in 2 pieces that are logically glued together. The info pertaining to OS happyness would live in write protected flash. Application and user settigns reside on the second block on mecha drive.
Before you install new software or do system maintenance you need to clean boot : boot from flash without loading any 'addon' data from mecha drive. Userneeds to press a button on the computer to allow flash to unlock and enter 'root' mode'. Only the package installer (from flash) can run at this point. After install/maintenance is done the flash gets sealed again.
this is a simple flipflop in the drive. holding the data low during hard reset ( user button ) the flipflop clocks in a zero and unlocks the flash. other wise it clocks in a '1' and protects flash.
Leaving root mode does not require a reset. software can set flipflop to 1. ( software cannot clear flipflop. the bit would be set-only. it takes a hardware button to clear. that button only works for a boot operation)
That way you would always enter 'root mode' from a known clean system.
Any potential infections would live in 'userspace'. booting in 'root; mode does not load anything from userspace.
You could even nuke userspace addons by simply erasing the extended registry.
that way you can install a program first to userspace , play with it for a while. once you decide it's safe and a 'keeper' : Cleanboot and reinstall to flash space then switch back to userspace.
If a program messes up, behaves badly or turns out to contain a 'nasty' : cleanboot and nuke the extented registry.... byebye nasty.
You could even have aprtitioned flash drives. partiton 1 is cleanboot capable. Partition 2 is 'userland'
Since NTFS (or any modern file system) has mounting points it should be fairly easy to implemnt such a system. for windows : the run registry is the cleanboot registry + userland registry. Userland registry can override cleanboot registry. So you can override settings from userland. But you still retain the possibility to 'nuke' the userland portion ( erase it ) so on the next boot you have a clean registry again.
( when i talk about registry i also mean : config , autorun and other stuff )
This would not interfere daily stuff like downloading trialware, doing a quick install pay with it for a couple of days and then decide what you want to do. if it ends up being not what you wanted : cleanboot , nuke the registry , delete the directory where the thingie was installed and you are rid of it for good. If its a keeper : cleanboot and run the installer again.
it also would force the user to physically push a button to 'open up' the computer for maintenance. also software cannot bypass this. it is governed by hardware ( a simple fliplfop in the drive and a pushbutton on the case. ) a memory location allows reading of the fliplfop and setting it to '1'
( for the record : i have such a mechanism as described above in many of my embedded systems. To enter firmware update you need to force a button on the box. The system boots from a known good config , updates from the package file, then re-seals the flash Rom. you can try all you want to reflash or corrupt the flash. it will not work since you can't write to it. if the system crashes due to user installs : cleanboot , nuke userland and go.
Instead of timecapsule...
Exploding caps is a common disease in todays electronics. Caps are not meant to run at high temps ( electrolytics that is ). They crack, vent the electrolytic and the capacitance decreases.
in switching supplies this means ripple current goes up which causes heat to go up, and the cap spirals to death.
Lots of caps are not made for pulse currents. Manufacturers install cheapass ching-chang-chong caps instead of good uality pulse rated low esr 105 degree caps to save 5 or 10 cents.
stick of dynamite icon with an alarm clock attached
Those crazy finns have whole winters to think about how to improve life ( when not on stoli ... )
they came up with mobile phones , cell phones , sattelite tv and now they guarantee internet.
I think by 2100 finns will be born with an wifi in their head. The doctor will ask : would you like to cut the cat-5 sir ?
why don;t they make a tool that can freeze a memory image to disk ?
The problem with slow booting machines is all the dynamic loading and linking going on between various elements.
Allow the machine to boot , configure it and reboot again clean. now store a memory layout as bootfile.
on the next power cycle the memory image is restored.
such an image could reside in a separate partition. a live memory image of a couple of hundred meagabytes could be loaded in under a second. the only thing required is a minimalistic hardware init.
if you install new hardware you would need to re-run the boot builder of course ...
ROM. game over... instead of flash simply put MASK rom back in those machines.
there can be user flash but the OS should be in mask rom.
Every student entering exam room hands over calc to teacher. Teacher holds down 2 or 3 keys and power on. That erases user flash. Teacher hands calc back to student.
In ROM there could be an official 'hook' to call user firmware.
result
- Hobbyists happy since they can mod to their hearts content
- teachers happy since they can wipe
- TI happy since they remain 'certified'
Real hackers/cheats would simply solder a second flash on board and toggle the CS pins using a small slide switch... Teacher cna erase 'standard flash'.
Student flicks switch ( under battery cover ) and powers back up. second flash is now mapped containting all his 'goodies'.
Stuff a couple of ripe camemberts down your pants before nestling your 'tush' in those seats.
You also may want to wear a couple of camemberts 'princess leia style' to avoid head injuries from the evil-throne headrest.
If life gives you Citro(e)ns make Citronade ...
are the bonking mad ? That language is flawed by design ... There is a reason it is called 'c' : that was the final grade it got when they handed it in ...
have they tried analysing the bartender problem with that tool of theirs ?
for people that don't know the bartender problem : 3 men walk in to a bar. and order a beverage,
Beverage costs 10 pence. the bartender receives 30 pence. The innkeeper says : these are good customers give them a pence discount on their tab.
the bartender can't split the 5 pence. so he gives each customer 1 penny back and keeps 2 for himself.
from the customers perspective : they only paid 9 pence each.. 3x9 = 27 , add the two pence the bartender kept. total : 29 pence... where o where did the thirtied one go ...
for multiple reasons.
first : you clearly see the lcd bend ( when he touches the lcd you see the color shift due to the glass warping ) the real deal would have an extra glass plate that forms the touchscreen. the cromatic shift would not be noticeable.
second all he shows is apps that are on iphone aspect ratio. simple screenshots.
there is not a single app that shows fullscreen. kinda stupid for a tablet.
the images also look 'inflated' like they were doubled in size.
Remembers me of a situation where some mac afficionado tried to convince me it was so much better than a PC with microsoft .
I asked what software he ran on his mac. The answer was : MS Word , MS excel , MS powerpoint , MS access , MS internet explorer and some other MS stuff...
When i pointed out that MS stood for Microsoft all i got was a blank stare ...
Nobody's home and the lights were off too ....
what ? an FPT client in windows ? that is surely monopolistic. We should have a ballot on which ftp client to install first ! Think about all those programs like smartftp , cuteftp that now are beeing blocked by the monopolistic ftp client from microsoft ...
and while we are at it can we also have a ballot for each and every other file that comes with a windows install.... That would certainly give a lot of choice to the user.
I also want a button that asks if i want fries with that...
There is something incorrect.
from wikipedia : 1 ) ' If there is a single seller in a certain industry and there are no close substitutes for the good being produced by him, then the market structure is that of a Pure monopoly. 2) Sometimes, there are many sellers in an industry and/or there exist many close substitutes for the good being produced, but nevertheless firms retain some market power. This is called Monopolistic competition by economists'
Linux is a close substitue ( So it is claimed to be by the fanbois. Everytime they claim it can do anything windows can, do it better, be more secure and do it with more features and options, and you get the source so you can tweak it. The summit of flexibility.)
So microsoft is not a pure monopoly. ( or else the linux adepts are lying ... )
So you can only claim 2. And there are plenty of other companies that have 'market power'. Want to run OsX ? its mac hardware only. Want to run on sun hardware? Its solaris only ... Want to drive a toyota ? sorry , honda doesn't make those and toyota won't let them.
The excuse that manufacturers are being bullied into installing windows is also debatable.
They get a volume discount on licences, the more they buy to more discount. Extrapolate this rule and max discount is attained when you buy only microsoft. How the stuff is split , if its lineair or not is irrelevant. Standard business practice anywhere. Want to have a french passport ? you ned to be a french citizen. Talk about a monopoly ! ( it's almost discrimination. You're not french ? sorry no passport ... )
All the pc hardware manufacturers are interested in is making money (like any other business). Yhe more kit they sell the higher their profits. The lower the cost of the raw material the more profit. PC manufacturers shoot for the grand audience. They do market research and manufacture what people want.
There have been manufacturers that went the linux only route. They had nice , cheap machines that were flogged via various outlets. Correct me if i'm wrong but they have all gone the way of the wind. Joe Schmoe isn't interest in those.
Today, all the big boys ( ibm / hp / dell ) sell business machines with red hat / sues and the likes preinstalled. There is a market large enough that it is ecnonomically sound to have such machines avaialble for shipping. But unfortunately for the 'linux advocates' those are not desktop machines. They are the big iron machines that sit in a closet somewhere humming happily away. Business is demand driven. There is no demand for linux from joe schmoe. Has this grown historically : yes. The PC was created by IBM and ran DOS from microsoft. Linux et al came only late into the game. Microsoft was already an established platform by then. You entered the market too late. That's all.
repeat afte rme : Microsoft does not have a monopoly since there are plenty of other os's out there that run on the same hardware. There are a million flavors of linux, theres' iRMX , there is VxWorks , there is pSos there is Solaris86 heck there is even SCO and IBM stuff out there that runs on the same hardware. And there are another bajillion companies that make software for windows and those other operating systems. Microsoft doesn;t even make the computer.
You buy a PC and you desicde what to install. And don;t get started about the 'microsoft tax'. Go and whine with the PC manufacturers. It's them that elect to preinstall windows and all the stuff that microsoft gives with it. (Ok there may be incentives attached to it , but that is the was business works. Try putting a lexmark ink cartridge in a Hp printer .. doesn't work either.... )
If the Pc manufacturers had a spine they would make machines avaialble with Os of choice. But.. then they will have ot support all the ned users of the machines with all these various OS's... mayor undertaking.
Even though i don't like Apple ( i have my reasons, see later ) they play it smart. Closed hardware , closed driver set, minimalistic range of options. Means they can focus their support and don't have to deal with cry babies that come with a 10 year old rickety scanner that they now want to hook up under windows 7 to a printerport and expect a driver for. You want to do what now ? sorry it's no longer supported : here is the new hardware , time to upgrade buddy. And at the same time they don;t have to run all the interop testing either.
It's for the same reason i don't like apple : as a hardware tinkerer there is very little you can do with these machines. everything is so locked down, and you need to go to them for almost anything. Even the harddisks on certain machines are locked down. No chance to pop out the default drive and bolt a bigger one in. But then again : that is not the public Apple caters for. so i can;t really blame them.
thw indows loko are the four colored squares forming a waving flag.
ie is internet explorer.
I would replace the logo with a stuck up middle finger ...
Even though i love the opera browser i am really starting to hate this attitude from the opera company.
Here is a clarification of my point : ( yeah my typing is bad sometimes , and no i'm not a troll. i am simply baffled by bad hardware/software engineering these days. Nasa flew to the moon and back, 40 years ago with 16 kilowords of memory space and a multitasking system running on a computer made only with dual nor gates ( fairchild 914's) ). Today we need a 5 megabyte kernel just to get to the point where we can start running an application... An old adagy says that any extra line of code adds a potential extra problem.
A mayor flaw with running critical code from ram is that: any memory leak ( whether a software bug , a shortcoming or an unintended side effect ) or a buffer overflow ( whether maliciously caused or not) can alter the intended loop of the program.
Running from ROM solves these problems. Code is unalterable. Additional traps in the rom image can force a reset.
Here is how i build critical systems the last 10 years: ( ARM based)
A real ROM ( not E2 or Flash but mask rom ) holds a bootloader. ( the bootloader is very small . about 76 words ... ) All this bootloader does, is initialise the SDRAM controller and then copy the executable code from FLASH to SDRAM. When this is done the bootloader sets a hardware flag. This flag can only be cleared by a power cycle or a hard reset ( somebody has to physically waddle over there and press the button ). The flag is used by the sdram controller to 'seal' a block of memory ( a simple hardware address comparator checks for a range of addresses and blocks write operations from the cpu side ). This whole mechanism resides in hardware. The SDRAM controller can still perform the refresh cycle, only the CPU can not write there. That is blocked by hardware.
At compile time i inject dummy code between subroutines and in unused space. All this dummy code contains is a JMP <bootvector>. If the code runs away , or is forced in limbo by the whole system will autoreset ( the bootloader gets re-invoked ) For debugging purposes the jump leaves a marker behind that tells me from which address it has jumped. The bootloader sends this to the serial debug port.
You can try all you want, the CPU will never execute anything from data space. Only if you succeed in overwriting the flash can this be done. The flash mechanism is also protected. Once the bootloader has ran the write access to flash is disabled ( same settable-only flag mechanism ). Only the bootloader has the flash mechanism. In order to flash firmware you need physical access to the system , hold the reset button 3 seconds and then it enters flashload mode. Flashload runs from the top of the flash memory. You can not jump there once the system is running ( The hardware flag has cut off access remember ).
All that is required is a couple of flipflops. The flipflop clk and data tied to ground. The CLR pin goes to the physical reset button , the SET pin goes to an address decoder. If address matches and a 1 is on d0 then set the flipflop. The whole thing is 2 lines in verilog code. On silicon you don't even see it..
Of course it is no excuse to write bad code, but a few simple hardware blocks can prevent unintended data execution, runtime code corruption and intrusion. Even if you find a way to execute data (you'll need physical access to the box and probe it as in solder wires to it) , this can not alter the cpu code. If you land in limbo : automatic reboot from a clean copy. simple as that.
In one of my systems i have extended this hardware block. When the bootloader finished copying flash to sdram it stores the memory pointer in a 'topmem register' and seals it by setting the flag. A hardware block monitors the address bus. If an instruction fetch happens from any address above this 'topmem' value :hardware reset , invoke bootloader : start from clean code. game over. So even if all else fails the bus cycle betrays you and forces a hardware reset.
The only point where the system is 'vulnerable' is prior to sealing the memory spaces. But that is when the bootloader runs from mask rom in the asic. So you can not corrupt this block. Prior to exiting the bootloader the sealing bits are turned on and memory is locked down. There is no speed penalty because code sits in sdram ( albeit a portion that has write access blocked by hardware )
Try all you want , you will only fail.
It baffles me that almost nobody takes care to put such simple mechanisms in place. It does not bother the programmers (actually it helps in debugging. You'll very quickly discover if you have a problem since the box will reboot immediately. The jumpvector gives you an indication from where the problem originated. You do need to take care about how you do the layout of your code, and you need to inject the dummy jump instructions. But that is a matter of code discipline. You can easily script such things.
And there is again another 'modern problem' most code these days is simply compiled and slapped on the box. The programmers do not understand the cpu, the hardware or care about memory layout. They are used to high level languages and 'leave it to the compiler'.. most of them don't even know how compilers behave.
One of the dangers of open source is the false sense of confidence and security.
The excuse is that it's been overlooked by so many people , so it must be bug free..
The last couple of days have proven that wrong , once more... Open source is good , because you can LEARN how things work. But blatantly dropping a chunk of code in a system is plain stupid. It would be like putting a floppy with unknown contents in the drive and booting from it... in the 80's and early 90's that was a sure way to get nasties on your machine.
couple of days ago the null pointe rproblem on all lunixes .. now this...
For criticla stuuf : use something that is in-house built and nobody outside has the source of. Make ik so that the thing is not a clear split between an os and an app with installable modules.
Write code that uses static adresses and cannot load something dynamically. And lastly : run from ROM , not copy the software to ram and execute from there. Use a CPU that has different code and data space. ( Harvard architecture machine ) Such an architecture prevents from executing anything that was thrown into ram. It simply is not possible. You can buffer overflow and try all kinds of tricks to your hearts content , you will never succeed in the system executing whatever you fee dit. it will dutyfully execute from ROM only.
That is one of the big security flaws in today's systems : they copy the OS and the runtime software to RAM and execute from there. If it's in ram it can be altered. If its in rom it cannot be altered. And if you use a serious cpu that has physically different address/databus for code and data then it is impossible. all you can change is the data, you can never change the code. and it will not execute anything in the data address space.
about heat pipe designs....
Heat pipes work because there is water ( or some other liquid ) inside , while a vacuum (or low pressure) is pulled on them before sealing. ( they should be welded shut )
The low pressure inside the pipe makes that the liquid boils (go from liquid to gas state) faster under application of heat.
The hot cpu makes the liquid 'boil' (faster due to low pressure), this vapor rises , dumps the transported heat in the fins, thus cooling down and becoming liquid again. it condensates on the walls and dribbles back down to the pool at the bottom where it is heated again by the CPU.
Now, looking at the design of these heat pipe constructions : you can only use these effectively if the pool is at the bottom. that means the motherboard has to be HORIZONTAL.
In my understanding these heat pipe constructions only work effectivly when using a flat case and not a tower case ... Alas most overclockers use big vertical cases ... Am i missing something or are they totally daft ?
The best cooling is a big lump of metal with lots of fins on it and forced air flow ( preferrably ducted ) directly attached to the cpu.