걍 혼잣말 2010. 4. 15. 23:48
글 그대로 카피함..

멀티테스킹.
 
그냥 멀티테스킹도아니고, 베터리가 오히려 오래가고 속도가 더 빠른 멀티.

 
정독하고, 또 정독했다.
 
진짜 대단한 회사다. 애플빠가 아니라, 이시대를 사는 젊은이로서 애플이 시도하는것들은 분명 배울만 하다.
 
UNIX를 응용해서, 멀티테스킹시 다른 일반 스맛폰이 쓰는 cpu에대한 free-for-all 방식( 리소스 대박잡아먹음)이 아닌,
 
한마디로 일시정지 시켜버리는 생각을 하다니...!!
 
진정 고객들이 원하는 것이 무엇인지를 알고,
 
'자신의 휴대폰이 사자마자 노후 되는 것이아니라, 시간이 갈수록 진화하게 만드는!!!'
 
보고 따라하지만 말고, 느껴라 한국 기업들.
 
되도않는 핑계, 콩깍지로 언제까지 울거먹을'거니'....
 
언제까지 '고객보다 앞선 생각'을 하지않고, ' 사후 약방문'만 두두릴 '거니'..

스냅드래곤, 손톱터치가 중요한게 아니란다.

아래 본문 마지막 문장 인용.
 

With that in mind, this approach seems exactly what the iPhone, the iPod touch, and the iPad needs.

'그런걸 생각해 보면 이런방식이 아이폰/터치/패드 유저가 필요한 방식이다. '
 

[ 멀티테스킹 동작원리]


출처 :www.cyworld.com/ch_19   /    cafe.naver.com/midcowon
 

How Multitasking Works in the New iPhone OS 4.0
At last, multitasking is coming to the iPhone 3GS, iPod Touch (3rd Gen) and iPad, allowing you to quickly switch between applications, using one while others keep doing other tasks in the background. This is how it works.


아이폰에서 멀티태스킹이 어떻게 동작하는가?

최소한 멀티태스킹이 아이폰3gs, 아이팟터치3세대, 아이패드에선 나오게 되고,
다른 태스크들을 백그라운드에 돌리면서 애플리케이션 사이를 변환을 빠르게 해준다.

어떻게 작동하는지 살펴보자


How Does It Work?
For the user, multitasking seems to work transparently and very quickly. According to Apple, you will be able to switch between applications instantly, while the application running on the foreground ?taking over the screen ?won´t suffer slowdowns.


유저에게는 멀티태스킹이 투명하고 빠르게 작동되는것처럼 보인다. 애플에 따르면, 애플리케이션 사이를 즉시 왔다갔다 할 수 있고, 현재 작동하는 애플리케이션이 느려지는 일은 없다고 한다.


Using their method you will be able to answer an incoming SMS, or chat with a friend, or answer a call, and then go back to keep playing a game, just where you left it before switching to any of those tasks. Or you will be able to upload photos to Flickr but without having to keep the Flickr app open, like you have to do now. In this case, the Flickr application will keep uploading those photos while you go read your email or check the weather.


SMS에 바로 응답하고, 친구와 채팅하고, 전화를 받을 수 있고... 이런 다른 태스크로 넘어가기 직전 상태 그대로 게임으로 바로 다시 돌아갈 수 있다. 또한 기존처럼 플리커 앱을 키지 않고도 플리커에 사진을 올리거나 할 수 있다.
이 경우에 플리커 앱이 사진을 올리는 동안 당신은 이메일을 읽던가 날씨를 확인할 수 있다


The user interface to manage all the running apps is quite simple: Double-clicking the home button will open a tray showing all running applications. Switching to another running app is as simple as clicking on it. It works like the task switch bar in Windows or Mac OS X.


유저 인터페이스도 제법 간단하다. 홈 버튼을 더블클릭하면 돌아가는 앱이 전부 보이는 트레이가 나타나고, 그냥 원하는것을 클릭하면 된다. 윈도우나 맥의 작업전환바 처럼 생겼다


Real-Life Examples
Here´s one example: In previous versions of the iPhone OS, if you are working on email and there´s a link to a web page, clicking on that link will open Safari and close Mail. Then, once you were done watching that web page, you close Safari, get back to the main iPhone menu, click on the Mail icon, and go back to your mail.


실생활 예:

지난 세대를 보면... 이메일을 보다가 웹사이트 링크를 누르면 사파리가 열리고 메일이 닫힌다. 그리고 나서 사파리를 다시 유저가 닫고 메인 화면에서 메일을 다시 열어야 한다.


With iPhone OS 4, Mail will keep running while Safari opens. To go back to Mail, the user just needs to double-click the home button: A dock will then slide in from the bottom of the page, showing the running apps. The Mail icon will be there, and clicking on it will instantly get back to where you left it.

아이폰 4에서는 사파리가 열려도 메일은 열려 있다. 메일로 돌아가려면 홈 버튼을 더블클릭하면 된다.
독(Dock)이 바닥에서 부터 튀어 나온다. 메일 아이콘이 거기 있고, 클릭만 하면 돌아간다.


 

Another good example is Skype: In previous versions, Skype needs to be open to receive calls. That makes it useless as a phone replacement. In iPhone OS 4, Skype can keep running in the background to receive calls. It doesn´t matter you are surfing the web or playing a game: You will be able to pick up the call ?switching instantly to Skype ?have a conversation for as long as you want, and then return to your browser or game just where you left it.

스카이프도 좋은 예이다. 지난 세대에서는 전화를 받기 위해 스카이프 앱을 켜놔야 해서.. 전화 대용으로 쓰기에는 가치가 없었다. 아이폰4에서는 스카이프가 백그라운드에서 전화를 받을 수 있다. 웹서핑을 하던지.. 게임을 하던지.. 스카이프로 바로 전환하여 통화하다가 다시 돌아오면 된다.

 

While running on the background, apps can do a lot more than that. An application like Pandora, for example, will be able to keep playing music when you are not actively in it. The music playback will run in the background, just like the iPod component of your iPhone, iPod touch, and iPad does.

백 그라운드에서 돌아가는 동안, 앱들은 더 많은일을 할 수 있다. 판도라(한국의 판도라 서비스 말고, 미국의 판도라)같은 경우 백그라운드로 음악을 틀어줄 수 있다. 아이폰의 아이팟 같이 작동한다.

 

Under the Hood
Apple claims their multitasking will save battery life and resources, unlike the competition. But how?

내면에는 실제로 어떻게 동작은?
애플은 경쟁사들과는 달리 멀티태스킹이 배터리 소모를 줄여줄것이라고 한다.

어떻게?

 

The reason is simple: This is not 100% true multitasking. Not in the sense that developers define it: All system resources are available to all applications, with the system assuming the role of a traffic controller, giving preference to some tasks and less preference to others as needed.

이유는 간단하다. 이건 100% 진짜 멀티태스킹이 아니다.
개발자들이 정의하는 방식으로는 아니다.
개발자들이 정의하는 방식으로는 모든 시스템 리소스에 앱이 접근 가능해서, 시스템은 교통정리만 해주면 되고, 우선순위만 정의해주면 되는거다.


 

Free-for-all multitasking will consume way too many resources, especially memory. This will make the system choke, given the limited memory available in these devices. The CPU would also be taxed, and it would deplete the battery life quicker while slowing down applications running on the foreground.

이런 "free for all" 멀티태스킹은 너무 많은 리소스를 차지하게 된다. 특히 메모리를... 이런 장비들의 메모리가 제한적인 만큼, 시스템이 숨이 막혀 버릴꺼다. CPU 또한 세금을 지불하게 된다. 배터리도 빨리 떨어지게 하고 앱들이 돌아가는 속도가 느려진다

 

Apple´s method, however, is quite clever: Basically, it allows you to pause applications ?like you can pause them in any UNIX-based operating system, while enabling some special services to allow some types of tasks ?like receiving calls or playing music ?to run on the background. There are seven kinds of services, and Apple says these will give the user the kind of multitasking they demand, but without choking the system:

애플의 방식은, 하지만, 꽤 똑똑하다: 기본적으로 애플리케이션들을 UNIX베이스 OS들에서 멈춰놓듯이 멈춰놓을 수 있다. 그리고 전화받거나 음악을 듣는등의 몇가지 특별한 서비스만 동작한다. 총 7가지의 서비스를 제공해 주는데, 애플말로는 이것들만 있으면 유저의 멀티태스킹 요구의 응답하면서도 시스템을 망치지 않을거라고 한다.


? The first one is obvious: Background audio for apps like Pandora ?and hopefully Spotify ?is a must for consumers, who demand other music sources beyond iTunes. It´s good to see that Apple is taking this area into account specifically, just like they allowed services like Netflix on the iPad.

첫번째껀 뻔한데... 판도라나... 스파티파이를 희망해 보지만.. 여튼 그런 음악이 백그라운드로 돌아가는거고,
애플이 마침네 이 분야를 허용해 준것이 보기 좋다... Ipad에서 넷플릭스를 허용해 준것처럼..


 

? Voice-over-IP services, for applications like Skype, are also logical, and another thing that consumers demand. Until now, VoIP applications were limited because they couldn´t receive calls when they were not active. The developers can even use custom sounds for notifications.

스카이프같은 VoIP서비스도 소비자의 요구에 있는 것들이다. 기존의 VoIP들은 앱이 꺼져 있을때 전화를 받을 수 없어 제한적이었는데, 이제는 개발자들이 알림기능을 쓰기 위해 커스텀 사운드까지 넣을 수 있다.

 

? Background location works at two levels, allowing location applications to be aware of your whereabouts, even if you don´t have the app open. Applications like TomTom would run this service in the background, so you can look at other apps while the GPS still tracks where you are. When it´s time to take a turn in your planned route, TomTom will tell you using the background audio service. All without having to leave whatever software you are running in the foreground.

백그라운드 위치는 두가지 레벨에서 이루어 지는데, 앱들이 켜져있지 않더라도 위치를 알 수 있게 해준다. TomTom같은 앱이 백그라운드에 돌게 해주면, 당신은 다른일을 하면서도 GPS가 당신 위치를 추적해 줄꺼다. 당신이 가다가 길을 꺾어야 할때면, TomTom이 자동으로 백그라운드 오디오 서비스로 알려줄꺼다. 당신이 지금 사용하는 앱을 끌 필요 없다.

 

It works similarly with other non-GPS apps that need location services in a less active way than a driving app like TomTom. Those apps can use 3G cell-tower triangulation to know exactly where you are, alerting you of friends proximity or things happening around you.

TomTom처럼 운전할때 쓰는 앱이 아니다라도 다른 non-gps 앱들도 이런걸 쓸 수 있다.
그 앱들은 3G 네트워크의 삼각측량을 사용하여 당신의 위치를 알아내고, 친구들이 어디 있는지 알아내는 등등의 일을 할 수 있다.


 

? Push notification was a background task already, but it has been expanded. The iPhone now also supports local notifications. These notifications are generated by the iPhone apps: If a cooking app has a timer, for example, it will be able to alert you when your roasted chicken is done.

푸시 노티피케이션은 이미 백그라운드 태스크였지만, 확장되었다.
아이폰은 로컬 노티피케이션을 허용해 준다. 따라서 당신의 요리 앱이 당신의 치킨 요리가 완료되었을 즈음에 알람을 알려주는게 가능해졌다.


 

? Task completion will allow applications to finish any tasks started before switching to another application. If you are sending or receiving a file in one app, you would be able to switch to another app, and that file will keep downloading.

태스크 완료 기능은 당신이 다른 태스크로 넘어가기 전에 시작된 작업들을 완료할 수 있게 해준다. 당신이 앱에서 파일을 전송중이라면, 다른 앱을 쓸때도 파일을 계속 받을 수 있을꺼다

 

? Fast app switching will make all running apps instantly available. Rather than having to start them up each time, like now, the apps in iPhone OS 4.0 will be able to sleep, ready to be awaken at the click of an icon in the running apps tray.

패스트 앱 스윗킹은 앱들이 매번 새로 시작하는게 아니라 "수면"상태로 놓게 해놓는거다. 그리고 아이콘이 클릭되면 다시 복구되는거고..

 

Basically, what Apple has done is to solve all the complaining from users who wanted to do several things at the same time. While this is not 100% multitasking, in the traditional desktop sense, it´s a good thing. Consumers won´t care about full multitasking if it really works like this. It´s all a matter of perception and being able to do what you want to do, as fast as possible, while keeping the sense of speed and a long battery life.

기본적으로 애플은 여러가지를 동시에 하고싶은 유저의 불만을 풀어냈다. 이건 전통적인 의미의 100%멀티태스킹은 아니지만, 좋은거다. 소비자들은 이렇게 잘 작동하기만 한다면 완벽한 멀티태스킹을 별로 신경 안쓸꺼다. 이건 결국 인식의 문제인거고, 최대한 스피드와 배터리 수명을 유지하면서 당신이 최대한 빠른 시간내로 뭘 할 수 있느냐에 대한거다.

 

With that in mind, this approach seems exactly what the iPhone, the iPod touch, and the iPad needs.

그런걸 생각해 보면 이런방식이 아이폰/터치/패드 유저가 필요한 방식이다.


----------------------------------------------------------------------------------------------

멀티태스킹이란 무엇인가?
하나의 시피유에서 여러개의 잡을 동시에 수행하는것처럼 느끼게 하는 테크닉이라고 생각하면된다.
5개의 일이있다면 조금씩 순차적으로 진행하는것을 매우빠르게 전환하면 동시에 진행하는것처럼 보인다는 것이 멀티태스킹이라 할 수 있다. 하지만 위에서 말하는 멀티태스킹은 어떤가?

반쪽짜리 멀티태스킹이다. 이 반쪽짜리 멀티태스킹을 정당화 하기 위한 변명정도로 밖에 들리지 않는다.
많은 이들이 아이폰에 열광하는 이유를 알고있다.

하지만 이런식의 막무가내씩 치켜세우기는 다른사람들의 기분을 언짢게 할 뿐이다.

툭 터놓고 이야기해본다면
아이폰에서의 멀티태스킹은 애시당초 하드웨어 설계시에 다중 태스크를 돌릴경우의 부하를 감당할만큼을 계산하고 있지않았기에 배터리 소모량이나 기타 퍼포먼스가 예상만큼 따라주지 않는다. 이러한 결과는 해킹된 펌웨어를 통해서 다중태스크를 돌려본 결과를 보면 간단히 알 수 있다.
(이러한 문제는 안드로이드 체제에서 다중 태스크시에 점점 느려지는 현상과도 동일하다)

그렇다면 수많은 이들이 요구하는 멀티태스킹을 지원은 해야겠으나, 퍼포먼스로 다시 도마에 오를거같으니 반쪽짜리 멀티태스킹을 지원하자는 의도이며 이 또한 매우 그럴싸하게 잘 포장한듯하다.

개인적으로 나는 애플빠도 아니고 그렇다고 애플까도 아니다.
스티브잡스를 좋아하고 존경하는 한명의 사람으로써 이러한 글은 매우 인상이 찌푸려지는 글이라 할 수 있다.

잡을 일시정지 시켜버린다는 것은 곧 태스크자체를 임시적으로 죽여버린다는 의미와도 같다. 그 말은 결국 동시 태스크 작업이 아니라 결국은 하나의 태스크가 돌고 있다라는 것을 의미하고 그 말은 반응속도(터치나 이런 반응속도가 아닌 어플리케이션의 반응속도)가 일정시간 이후에나 꺠어나므로 문제가 생기는 반쪽짜리 멀티태스킹이란 것이 가장 큰 요지이다. (조금 극단적으로 설명했지만 요지는 5개의 멀티가 띄워져있다면 실제로는 2개만 반응하고 나머지는 죽어있는 상태와도 같다라는걸 의미한다)

멀티태스킹에 오히려 배터리가 오래간다라는건 또한 말이안된다. 왜냐하면 스케쥴러에 의해 스케쥴링 되는데 멀티태스크가 될경우 CPU레벨에서의 오퍼레이션이 더 줄어들리는 없기떄문이다. 더 늘어나게 되는 코드이지 줄어들 코드가 아니므로 전력소비량이 증가하게 된다. 이는 어불성설이다. 결국 늘어났다라면은 클럭 컨트롤이나 기타 다른 테크닉을 이용해서 늘였을뿐이지 멀티태스킹으로인해 늘어나는 것은 아니라는 소리이다.

속도가 더 빠르다는 말도 조금은 이해가 되지않는다 여러개의 잡이 돌고있을때랑 한개만 돌떄랑 어찌 두개짜리가 더 빠를수 있단말인가?

애플을 싫어하지도 좋아하지도 않는 사람의 입장에서 이런식의 막무가내씩 까내리기는 좋지못하다고 생각한다. 물론 수많은 국내 기업들의 스마트폰이 제자리걸음이고 마케팅이 너무 강해서 낚이기도 하는 경향이 꽤나 있다는것을 인정하지만, 무조건 치켜세우는건 아니라고 본다.

애플이 우세할수 있는 이유는 단하나.....운영체제라는 녀석을 오랫동안 만들어온 업체이고 노하우가 있기떄문이다.

좋은 기기 이고 좋은 서비스 환경을 구축해 놓은것에는 인정을 하지만, 무조건적으로 치켜세우고 저것이 진리다. 이것은 전설이다. 이런식의 막무가내는 지양해야할 자세이지않을까?

비판을 하려면 최소한 둘의 정확한 비교를 한후에, 대안을 제시하는모습이 다른사람들을 더욱 설득케 하는게 아닐까 하는 생각을 위 글을 읽으며 느꼈다...그래서 남기는 뻘소리 블로그..;;

덧.  일시정지 시키는 생각은 OS이론적으로 예전부터 있던 테크닉이고 실제로 타 모바일에서도 사용하는 기술인데.."이런생각을 하다니.."라는 문구는 마치 애플이 대단한걸 발상전환해서 떠올린듯한 느낌...잘 조합하는건 인정하는데 마치 재네들이 새로운 개념을 정의한듯한 그런 오인할 수 있는 내용들도 좀...흠좀무..

posted by Sense.J
: